marcys
Goto Top

Vbs datei oder batch erst nach 60 sekunden ausführen

Hallo,

meine Angelegenheit ist wahrscheinlich zuper einfach, da ich aber von vbs und batch nicht viel Ahnung habe, hoffe ich auf eure Hilfe.

Im Autostart habe ich eine VBS Datei mit dem Inhalt:

Set WshShell = WScript.CreateObject( "WScript.Shell" )
WshShell.Run "C:\Windows\System32\netzlaufwerk.bat",0,True

hier wird die netzlaufwerk.bat ausgeführt. Nun würde ich gerne diese Datei verzögert ausführen, d. h. erst nach 60 sekunden.

Ist so was machbar. Wie müsste ich das in der VBS Datei ändern?

Gruß
Martin

Content-Key: 181825

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

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

Member: bastla
bastla Mar 12, 2012 at 18:09:28 (UTC)
Goto Top
Hallo Marcys!

Füge einfach als erste Zeile
WScript.Sleep 60000
ein.

Grüße
bastla
Member: Skyemugen
Skyemugen Mar 12, 2012 at 18:18:17 (UTC)
Goto Top
Aloha,

je nach Betriebssystem könntest du auch per timeout.exe
TIMEOUT [/T] Zeitlimit [/NOBREAK]

Beschreibung:
    Dieses Dienstprogramm verwendet einen Zeitlimitparameter, so dass
    der angegebene Zeitraum (in Sekunden) verstreicht oder eine Taste
    gedrückt wird. Außerdem ignoriert der Befehl den Tastendruck durch
    eine Parametereingabe.

Parameterliste:
    /T        Zeitlimit     Bestimmt die Wartezeit in Sekunden.
                            Gültiger Bereich: -1 bis 99999 Sekunden.

    /NOBREAK                Ignoriert gedrückte Tasten und wartet laut
                            dem angegebenen Zeitraum.

    /?                      Zeigt diese Hilfe an.

HINWEIS: Ein Zeitüberschreitungswert von -1 bedeutet, dass unendlich
         lang auf einen Hauptprozess gewartet wird.
oder
waitfor.exe
WaitFor hat zwei verschiedene Syntaxmethoden:

Syntax 1: Signal senden
    WAITFOR [/S System [/U Benutzer [/P [Kennwort]]]] /SI Signal

Syntax 2: Auf ein Signal warten
    WAITFOR [/T Zeitlimit] Signal

Beschreibung:
    Dieses Dienstprogramm sendet oder wartet auf ein Signal auf einem
    System. Ohne Angabe von /S wird das Signal an alle Computer in der
    Domäne gesendet. Wenn /S angegeben wird, wird das Signal nur an den
    angegebenen Computer gesendet.

Parameterliste:
    /S   System            Bestimmt das Remotesystem, an das das Signal
                           gesendet wird.

    /U   [Domäne\]Benutzer Bestimmt den Benutzerkontext, unter dem
                           der Befehl ausgeführt wird.

    /P   [Kennwort]        Bestimmt das Kennwort für den Benutzerkontext.

    /SI                    Sendet das Signal über das Netzwerk an
                           wartende Computer.
    /T   Zeitlimit         Wartezeit in Sekunden. Gültiger Bereich:
                           1 bis 99999. Standard ist unendlich.

    Signal                 Der Name des Signals, auf das gewartet oder
                           das gesendet wird.

    /?                     Zeigt diese Hilfe an.

    HINWEIS: Ein Computer kann auf mehrere eindeutige Signalnamen warten.
             Der Signalname darf nicht mehr als 225 Zeichen und
             keine Zeichen außer a-z, A-Z, 0-9 und ASCII-Zeichen
             im Bereich von 128 bis 255 enthalten.
(Win 2000 Res. Kit bzw. Windows 7) dies auch in Batch bewerkstelligen

greetz André
Member: Antos
Antos Mar 13, 2012 at 07:46:35 (UTC)
Goto Top
Hi,

oder du lässt eine Schleife laufen:

Dim start = Timer
Dim timeToLive = 60    						' Time in sec  

do while Timer < start + timeToLive
loop

mfg

Antos
Member: TsukiSan
TsukiSan Mar 13, 2012 at 13:48:41 (UTC)
Goto Top
Moin Maenners,

alle Klarheiten beseitigt? *gruebel*

Bastlas Variante ist ja wohl immer noch die performanteste!
Die anderen Beitraege sind natuerlich auch gut, aber....

Gruss
Tsuki
Member: bastla
bastla Mar 13, 2012 at 14:48:05 (UTC)
Goto Top
Hallo Tsuki!

Die "performanteste" Variante beim Warten klingt lustig, die Überlegung ist aber durchaus richtig - gerade beim Starten (Anmelden) kann's ja eigentlich nie schnell genug gehen ... face-smile

Grüße
bastla
Member: Marcys
Marcys Mar 13, 2012 at 19:25:26 (UTC)
Goto Top
Hallo Zusammen,

vielen Dank für die zahlreichen Tipps. Ich denke der, erste Tipp von bastla war für mein Vorhaben das optimalste.

Gruß
Martin
Member: TsukiSan
TsukiSan Mar 14, 2012 at 00:06:39 (UTC)
Goto Top
@bastla,

ah ja! Der TO schrieb ja, dass er das in den Start legen möchte. Da sollte man alles tun, dass aus einer Bill-Gates-Gedenkminute kein Bill-Gates-Gedenktag wird face-wink


Gruss
Tsuki