retz12
Goto Top

VBS-Script schließen von Fenster verhindern

Ich habe ein Anmelde Script in VBS geschrieben, dass beim Anmelden ein Internet Explorer Fenster öffnet und den Status der einzelnen Befehle anzeigt.
Jetzt bin ich draufgekommen, dass einige User frühzeitig das Fenster schließen.
Ich weiß dann nicht ob alle Befehle ordnungsgemäß ausgeführt wurden.

Jetzt meine Frage:
Kann man in einem VBS-Script das Schließen eines Fensters (mittels X rechts oben) verhindern?

Content-Key: 93022

Url: https://administrator.de/contentid/93022

Printed on: April 26, 2024 at 19:04 o'clock

Member: AndreasHoster
AndreasHoster Jul 28, 2008 at 08:27:49 (UTC)
Goto Top
Na ja, einfachste Variante:
Den IE im FullScreen / Kiosk Modus starten. Da gibts dann keine Adress/Menuleiste mehr und auch keine Titelleiste, damit auch kein X zum Schließen (hilft nicht gegen Strg+Alt+Del und den Taskmanager)
Edit: Hilft aber gegen Strg+W und Alt+F4

Die andere Variante hilft nicht wirklich gegen das Schließen, aber Du kannst auf das Schließen reagieren. Mann kann in VBS die Events des IE bekommen und damit auf das onQuit Event reagieren. Der IE schließt immer noch, aber man könnte dann einfach einen neuen aufmachen.
Hier ein BSP-Code-Schnipsel
Set oIE=Wscript.CreateObject("InternetExplorer.Application","ie_")  
oIE.navigate("Hier die URL")  
oIE.FullScreen = False <- True für Kioskmodus
oIE.visible=true

sub ie_onQuit
REM Hier könnte man jetzt auf das Schliessen mit irgendwas reagieren. z.B. einen neuen IE aufmachen.
end sub
Mitglied: 67369
67369 Jul 28, 2008 at 09:39:33 (UTC)
Goto Top
Kann man in einem VBS-Script das Schließen eines Fensters (mittels X rechts oben) verhindern?

Nicht wirklich. Der IE lässt sich auch einfachst über STRG-W schließen.
Member: Logan000
Logan000 Jul 28, 2008 at 13:27:34 (UTC)
Goto Top
Moin moin

Das ist zwar nicht genau das was Du suchst aber vielleicht ....

Wann immer ich eine Skriptausgabe im IE mache, merke ich mir in einer Variable den gesamten HTML text den ich für jede Meldung/Ausgabe erweitere.

Set objExplorer = WScript.CreateObject("InternetExplorer.Application")  
objExplorer.Width=400
objExplorer.Height = 500 
objExplorer.Left = 20
objExplorer.Top = 20
HTMLText = "<body><h1>Hallo Lieber User</h1> </body>"  
objExplorer.Document.Body.InnerHTML = HTMLText 

HTMLText = HTMLText & "<br> Zeit aufzuwachen"  
objExplorer.Document.Body.InnerHTML = HTMLText 
....

Solte der User das IE Fenster zwischendurch schliessen wird es bei nächsten .InnerHTML setzen alles wieder angezeigt.
Das ist natürlich nur ein Notnagel.

Gruß L.
Mitglied: 67369
67369 Jul 28, 2008 at 13:43:04 (UTC)
Goto Top
Edit: Hilft aber gegen Strg+W und Alt+F4

Das hättest du wohl gern. Was gegen Schließen eines Fensters hilft, ist ein Sperren der Tastatur und der Maus, und sonst nichts.

Gegen STRG-W und ALT-F4 hilft dein Script, so wie es da steht
Set oIE=Wscript.CreateObject("InternetExplorer.Application","ie_")
oIE.navigate("Hier die URL")
oIE.FullScreen = False <- True für Kioskmodus
oIE.visible=true


sub ie_onQuit
REM Hier könnte man jetzt auf das Schliessen mit irgendwas reagieren. z.B. einen neuen IE aufmachen.
end sub

jedenfalls nicht.
Member: AndreasHoster
AndreasHoster Jul 28, 2008 at 14:49:20 (UTC)
Goto Top
Nochmals getestet, ist tasächlich richtig.
Beim ersten Mal ging Strg+W nicht, weil das Kiosk-Fenster den Fokus nicht hatte.

OK, da hilft dann halt doch nur, im onQuit einen neuen IE zu öffnen.