Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst VBS-Script soll den IE öffnen - aber auch bei mehrmaligem Aufruf immer im gleichen Fenster starten!

Mitglied: Maikell84

Maikell84 (Level 1) - Jetzt verbinden

20.01.2014, aktualisiert 16:28 Uhr, 4648 Aufrufe, 2 Kommentare, 1 Danke

Hallo!

Ich habe eine Frage zu einem VBS-Script, welches ich aus dem Internet kopiert und etwas angepasst habe.
Das folgende Script ruft den Internetexplorer ohne Statuszeile, Menüleiste usw... auf und navigiert sofort zu der URL, die ich dem Script übergebe.

01.
Dim objExplorer, url 
02.
url = WScript.Arguments.Named.Item("url") 
03.
Set objExplorer = WScript.CreateObject("InternetExplorer.Application") 
04.
 
05.
Do While (objExplorer.Busy) 
06.
    Wscript.Sleep 250 
07.
Loop 
08.
 
09.
objExplorer.TheaterMode = False 
10.
objExplorer.AddressBar = True 
11.
objExplorer.MenuBar = False 
12.
objExplorer.StatusBar = False 
13.
objExplorer.ToolBar = False 
14.
objExplorer.Resizable = True 
15.
 
16.
' Hier die Fenstergröße definieren 
17.
objExplorer.Height = 715 
18.
objExplorer.Width = 650 
19.
objExplorer.Left = 0 
20.
objExplorer.Top = 0 
21.
'objExplorer.FullScreen = True 
22.
objExplorer.Silent = False 
23.
objExplorer.Visible = True 
24.
 
25.
objExplorer.Navigate url 
26.
 
27.
 
28.
objShell.AppActivate objExplorer 
29.
 
30.
 
31.
'WshShell.AppActivate oWshShell.ProcessID	 
32.
 
33.
Set objExplorer = nothing
Soweit so gut. Funktioniert auch


Nun wird das Script jedes Mal in einem neuen Fenster aufgerufen, was schlecht ist. Es sollte einmal in einem neuen Fenster aufgehen, und dann sollte die Seite immer wieder im gleichen Fenster aufgerufen werden, wenn der Benutzer das Fenster noch nicht geschlossen hat.

Nun bin ich mit meinen bescheidenen vbs und batch-Kenntnissen am Ende, weswegen ich mich fragend an Euch wende.
Wie ist das zu realisieren?

Mein Gedanke war:
Erkennen ob das Fenster schon offen ist. Falls ja das Fenster killen und neu aufmachen.
Z.B.:

01.
   Set objWMIService = GetObject("winmgmts:\\localhost\root\CIMV2") 
02.
   Set colItems = objWMIService.ExecQuery("SELECT * FROM Win32_Process WHERE CommandLine LIKE '%iexplore.exe%'  ", "WQL", _ 
03.
                                          wbemFlagReturnImmediately + wbemFlagForwardOnly) 
04.
 
05.
   For Each objItem In colItems 
06.
 WScript.Echo "ProcessId: " & objItem.ProcessId 
07.
next
Dadurch habe ich die Prozess-ID des IE Fensters, und kann sie dann mit taskkill killen.
Problem bei der Sache:
1.) Ich kann nicht herausfinden, welches das IE-Fenster ist, mit dem der Nutzer durch das Internet surft und welches das Fenster ist, welches ich durch das obige Script aufgemacht habe.
2.) Ich erhalte durch den Befehl 6 IE-PIDs, obwohl nur 2 Fenster offen sind?


Habt Ihr eine Idee, wie ich die Problemstellung lösen kann?

Viele Grüße
Maikell
Mitglied: colinardo
LÖSUNG 20.01.2014, aktualisiert um 16:28 Uhr
Hallo Maikell,
machs mal so:
01.
Dim objExplorer, url 
02.
url = WScript.Arguments.Named.Item("url") 
03.
 
04.
Set objShell = CreateObject("Shell.Application") 
05.
Set WshShell = CreateObject("Wscript.Shell") 
06.
 
07.
'Objekt mit allen aktuellen Fenstern holen 
08.
Set objWindow = objShell.Windows() 
09.
For Each objItem In objWindow 
10.
    ' Wenn die Befehlszeile des Fensters 'iexplore' enthält und die Breite des Fensters 650 beträgt, dann setze objExplorer auf das Fenster-Objekt 
11.
    If InStr(1,LCase(objItem.FullName),"iexplore",1) and objItem.Width = 650 Then 
12.
    	Set objExplorer = objItem 
13.
        Exit For 
14.
    End If 
15.
Next 
16.
 
17.
' Wenn kein passendes IE-Fenster gefunden wurde, erzeuge ein neues IE-Object 
18.
If IsEmpty(objExplorer) Then 
19.
    Set objExplorer = CreateObject("InternetExplorer.Application") 
20.
End If 
21.
 
22.
objExplorer.TheaterMode = False 
23.
objExplorer.AddressBar = True 
24.
objExplorer.MenuBar = False 
25.
objExplorer.StatusBar = False 
26.
objExplorer.ToolBar = False 
27.
objExplorer.Resizable = True 
28.
 
29.
' Hier die Fenstergröße definieren 
30.
objExplorer.Height = 715 
31.
objExplorer.Width = 650 
32.
objExplorer.Left = 0 
33.
objExplorer.Top = 0 
34.
objExplorer.Silent = False 
35.
objExplorer.Visible = True 
36.
 
37.
objExplorer.Navigate url 
38.
 
39.
Do While (objExplorer.Busy) 
40.
    Wscript.Sleep 250 
41.
Loop 
42.
 
43.
wshShell.AppActivate objExplorer 
44.
 
45.
Set objExplorer = Nothing 
46.
Set objShell = Nothing
Grüße Uwe
Bitte warten ..
Mitglied: Maikell84
20.01.2014 um 16:28 Uhr
Hallo Uwe,

Klasse, vielen Dank!!
Das funktioniert so genau wie es soll!
Perfekt!

Viele Grüße
Maikell
Bitte warten ..
Ähnliche Inhalte
Entwicklung
VBS Script in Powershell aufrufen
gelöst Frage von HanutaEntwicklung7 Kommentare

Hallo Zusammen, ich möchte einen VBS Script in Powershell aufrufenist das überhaupt möglich ? Wenn ja, wie ? VG ...

VB for Applications
VBS Script kann Prgramm nicht starten
gelöst Frage von C.BoernerVB for Applications15 Kommentare

Hallo ihr Admins, Ich habe folgendes Scenarios ein Programm läuft im Hintergrund (Drivve-Image) das übergibt Werte an ein VBS ...

Batch & Shell

VBS-Script reagiert bei Start über Task anders als sonst

gelöst Frage von LarzBatch & Shell4 Kommentare

Hallo zusammen, ich habe hier eine Batch-Datei die ein Programm mit verschiedenen Parametern aufrufen muss: Ein Parameter ist dabei ...

Batch & Shell

Exe ohne Fenster aus vb aufrufen

gelöst Frage von Mit.ohne.AhnungBatch & Shell12 Kommentare

Hallo Zusammen, ich erstelle gerade ein Programm mit Visual Studio und möchte eine exe aufrufen ohne das ein Fenster ...

Neue Wissensbeiträge
Windows 10
Zero-Day-Lücke in Microsoft Edge
Information von kgborn vor 1 TagWindows 10

In Microsofts Edge-Browser klafft wohl eine nicht geschlossene (0-Day) Sicherheitslücke im Just In Time Compiler (JIT Compiler) für Javascript. ...

Sicherheit
Microsoft und Skype: Sicherheit
Information von kgborn vor 1 TagSicherheit

Die Tage gab es ja einige Berichte zur Sicherheit des Skype-Updaters. Der Updater von Skype läuft unter dem Konto ...

Datenschutz

Behörden ignorieren Sicherheitsbedenken gegenüber Windows 10

Information von Penny.Cilin vor 2 TagenDatenschutz8 Kommentare

Hallo, passend zum Thema Ablösung LIMUX in München ein interessanter Beitrag dazu: Behörden ignorieren Sicherheitsbedenken gegenüber Windows 10 Anscheinend ...

Sicherheit
Information Security Hub Munich airport
Information von brammer vor 2 TagenSicherheit

Hallo, Neues Center für Cyber Kriminalität am Münchener Flughafen brammer

Heiß diskutierte Inhalte
DSL, VDSL
Mindestgeschwindigkeiten DSL Telekom
Frage von justlukasDSL, VDSL13 Kommentare

Hallo zusammen, Seit diesem Jahr habe ich Verständnisprobleme mit dem Verhalten der Telekom. Wir haben seit einem Jahr VDSL ...

Switche und Hubs
LANCOM-Switch: Probleme (no link) mit SFP-Modulen?
Frage von THETOBSwitche und Hubs11 Kommentare

Hi zusammen, ich habe folgendes Problem: Und zwar habe ich an einem Standort drei Switche verbaut - LANCOM GS-2326P+, ...

Humor (lol)
Was könnte man mit einem Server machen? Idee gesucht
Frage von 2SeitenHumor (lol)10 Kommentare

Hey Zusammen Ich habe einen alten HP G2 Rackserver zu Hause rumliegen. 28GB Ram, 1xAMD Prozi mit etwa 2GHz. ...

Firewall
RB2011 Firewall Rule eine bestimmte Mac oder IP Adresse nicht zu blockieren
Frage von lightmanFirewall10 Kommentare

Hallo liebes Forum mit ihren Spezialisten. Ich habe meine Firewall so konfiguriert das kein Endgerät ohne meine Speziellen Erlaubnis ...