Beiträge von Norbert aus Berlin
-
-
Hallo an alle, die das lesen.
Mich treibt schon lange ein Problem um.
Ich möchte die internen Werte der Anzahl der offenen FF-Session und die Anzahl der Register der aktiven FF-Session,
die interne Nummer des aktiven Registers, die URL auf die das Register zeigt erhalten.
Das aktive Register schliessen und das alles dann für das nächste Register, ... bis zum Ende durchführen
Das alles über ein "Programm"; müsste ja irgendwo im Speicher der FF-Session meines Rechners liegen.
Ich denke dabei an Programmcode a la VBA von MS-Office.
Aber von außen (Makros von MS-Office) dauert es lange, ist nicht sicher und ich beherrsche nicht alle Befehle.
Nachfolgend ein VBA-Beispiel zum Einlesen des Inhalts(!) einer WEB-Seite in MS-Word:
Set WebBrowser = CreateObject("InternetExplorer.Application")
noch_mal:
inp_url = InputBox("WEB-Adresse eingeben:", , inp_url)
If inp_url = "" Then GoTo ende
WebBrowser.Navigate inp_url
' Vorbereitung für "my_MsgBox"
Set objShell = CreateObject("WScript.Shell")
msg1 = "Der Standard-WEB-Browser lädt die Seite:" & Chr(10)
msg2 = """" & inp_url & """"
my_msg = msg1 & msg2
sec_time = 5
titel_txt = "Lese den Inhalt einer WEB-Seite"
' Warten, bis die Seite geladen ist
Do While WebBrowser.busy
DoEvents ' in "read_www"
objShell.Popup my_msg, sec_time, titel_txt ' "my_MsgBox"
' Das "Popup" mit kurzer Zeit erzeugt KEIN flimmern!
Loop
'objShell.Quit ' erzeugt Fehler
Set objShell = Nothing
On Error GoTo befehl_ist_nicht_ausfuehrbar
Response = WebBrowser.Document.body.InnerHtml
If Response = "" Then
MsgBox ("Die geöffnete WEB-Seite ist leer!")
Else
msg1A = "Inhalt der WEB-Seite """ & inp_url & """:" & vbCr
len_resp = Len(Response) ' len_resp = 294 (im Beispiel dieser url)
msg1B = "Anzahl der Zeichen auf dieser WEB-Seite = " & Format(len_resp, "#,###") & vbCr & vbCr
msg1 = msg1A & msg1B
len_msg1 = Len(msg1)
grenze = 1000 - len_msg1
msg2 = Left(Response, grenze)
If len_resp > grenze Then
msg3 = " ..."
Else
msg3 = ""
End If
my_msg = msg1 & msg2 & msg3
MsgBox (my_msg)
' Wie lang ist eine Message über MsgBox ???
' Zitat aus der Hilfe:
' Der Prompt (hier "my_msg") ist erforderlich.
' Er ist ein Zeichenfolgenausdruck, der als Meldung im Dialogfeld erscheint.
' Die Maximallänge von prompt ist - je nach Breite der verwendeten Zeichen -
' etwa 1024 Zeichen
my_msg = "Den Inhalt in das aktuelle Word-Dokument ab der aktuellen Cursorposition einfügen?"
ret = MsgBox(my_msg, vbYesNoCancel)
If ret = vbCancel Then GoTo ende
If ret = vbYes Then
Selection.TypeText text:=Response
Else
GoTo noch_mal
End If
End If
GoTo ende
VIELEN DANK im voraus.