Discussion:
vbs Skript
(zu alt für eine Antwort)
Walt Gallus
2010-03-11 05:59:38 UTC
Permalink
Guten Tag

Vor einigen Jahren (!) hat mir ein freundlicher hier User folgendes
Skript zur Verfügung gestellt:

-----------------------------------------------------------------------------

' Datei: RestartReminder.vbs
'
' Funktion: Startet Reminder wie gewohnt.
' Beim Beenden von Reminder kann gewählt
' werden, ob Reminder beendet oder neu
' gestartet werden soll.

Option Explicit
Dim WshShell,Command
Dim Return,Prompt,Title,Result

Command = "c:\C:\Program Files\Remind5\reminder.exe"
' Pfad angepasst
Prompt = "Möchten Sie Reminder beenden?"
Title = "Reminder Restarter"

Set WshShell = WScript.CreateObject("WScript.Shell")
WScript.Sleep 60000
While RestartReminder()
' Leere Schleife
Wend
Set WshShell = Nothing
WScript.Quit

Function RestartReminder()
Return = WshShell.Run(Command, 1, True)
Result=MsgBox(prompt,36,title)
If Result = 6 Then
RestartReminder = False
else
RestartReminder = True
end if
End Function

-----------------------------------------------------------------------------

Wenn ich dieses Skript unter Windows 7 ausführe, erhalte ich
folgende Fehlermeldung:

----------------------------------------------------------------------------

Windows Script Host

Skript: C:\Users\wa\AppData\Roaming\Microsoft\Windows\Start
Menu\Programs\Startup\RestartReminder.vbs
Zeile: 25
Zeichen: 3
Fehler: Das System kann die angegebene Datei nicht finden.
Code: 80070002
Quelle: (null)
OK
---------------------------------------------------------------------------

Was muss ich (völliger Laie) am Skript ändern?
Sorry - ich weiss, dass ich hier in der falschen NG bin. Vielleicht
aber tummelt sich der Autor des Skripts auch noch hier herum ;-).

Dank und Gruss
Walt Gallus
Ralf Breuer
2010-03-11 07:11:56 UTC
Permalink
Walt Gallus <***@gmx.net> schrieb:

Hallo Walt,
Post by Walt Gallus
Command = "c:\C:\Program Files\Remind5\reminder.exe"
c:\C:\ -->> C:\

Den Pfad gibt es so?
--
Gruß
Ralf
Ich mag kein TOFU. Siehe http://einklich.net/usenet/zitier.htm
Bei Direkt-Mails NOSPAM entfernen
Walt Gallus
2010-03-11 13:38:14 UTC
Permalink
"Ralf Breuer" schrieb
Post by Ralf Breuer
c:\C:\ -->> C:\
Uff - sorry!
Post by Ralf Breuer
Den Pfad gibt es so?
Ich habe ihn so per Copy/Paste aus den Eigenschaften der Datei
entnommen. Dort ist die Datei auch vorhanden.
Auch wenn ich das Skript von seinem "Lagerplatz"
(C:\Users\wa\AppData\Roaming\Microsoft\Windows\Start
Menu\Programs\Startup\RestartReminder.vbs) direkt ausführe,
erscheint die selbe Fehlermeldung.

Gruss
Walt Gallus
Ralf Breuer
2010-03-11 14:15:12 UTC
Permalink
Post by Walt Gallus
Post by Ralf Breuer
"C:\Program Files\Remind5\reminder.exe"
Den Pfad gibt es so?
Ich habe ihn so per Copy/Paste aus den Eigenschaften der Datei
entnommen. Dort ist die Datei auch vorhanden.
Auch wenn ich das Skript von seinem "Lagerplatz"
(C:\Users\wa\AppData\Roaming\Microsoft\Windows\Start
Menu\Programs\Startup\RestartReminder.vbs) direkt ausführe,
erscheint die selbe Fehlermeldung.
Ahh, wahrscheinlich fehlen weitere Gänsefüßchen wegen des Leerzeichens im
Pfad:

Command = """C:\Program Files\Remind5\reminder.exe"""

Wenn das nicht geht, versuche es mit dem Kurznamen:

Command = "C:\Progra~1\Remind5\reminder.exe"
--
Gruß
Ralf
Ich mag kein TOFU. Siehe http://einklich.net/usenet/zitier.htm
Bei Direkt-Mails NOSPAM entfernen
Walt Gallus
2010-03-11 19:48:06 UTC
Permalink
"Ralf Breuer" schrieb
Post by Ralf Breuer
Command = """C:\Program Files\Remind5\reminder.exe"""
Bringt diese Fehlermeldung:

-------------------------------------------------
Windows Script Host
Skript: C:\Users\wa\AppData\Roaming\Microsoft\Windows\Start
Menu\Programs\Startup\RestartReminder.vbs
Zeile: 12
Zeichen: 13
Fehler: Anweisungsende erwartet
Code: 800A0401
Quelle: Kompilierungsfehler in Microsoft VBScript
OK
-------------------------------------------------
Post by Ralf Breuer
Command = "C:\Progra~1\Remind5\reminder.exe"
Funktioniert - Danke, Ralf!

Aber ich wundere mich: was bedeutet unter Win7 (sic) dieser
DOS-Rückfall?

Gruss
Walt Gallus
Ralf Breuer
2010-03-11 20:20:34 UTC
Permalink
Post by Walt Gallus
Funktioniert - Danke, Ralf!
bitte :-)
Post by Walt Gallus
Aber ich wundere mich: was bedeutet unter Win7 (sic) dieser
DOS-Rückfall?
Statt "Programme" heißt der Ordner "Program Files".
Ich würde gerne den Verantwortlichen, der vor längerer Zeit Leerzeichen im
Pfad zugelassen hat, teeren und federn ;-)

Ich kann kein vbs. Das mit den Dreifach-Gänsefüßchen war geraten.
Keine Ahnung. Und ich will es jetzt nicht testen.
--
Gruß
Ralf
Ich mag kein TOFU. Siehe http://einklich.net/usenet/zitier.htm
Bei Direkt-Mails NOSPAM entfernen
Walt Gallus
2010-03-12 05:30:23 UTC
Permalink
"Ralf Breuer" schrieb
Post by Ralf Breuer
Ich würde gerne den Verantwortlichen, der vor längerer Zeit
Leerzeichen im Pfad zugelassen hat, teeren und federn ;-)
Meine virtuelle Unterstützung sei dir gewiss.

Dank und Gruss
Walt Gallus
Walt Gallus
2010-04-25 14:55:43 UTC
Permalink
Post by Walt Gallus
Post by Ralf Breuer
Command = "C:\Progra~1\Remind5\reminder.exe"
Funktioniert - Danke, Ralf!
Es _hat_ funktioniert :-(.

Ich habe W7 auf eine grössere Festplatte gezügelt, indem ich die 100 MB
System- und die C: mit W7 und Programmen Partitionen mittels Acronis
disk Director von der alten auf die neue HD kopiert habe in der
Überzeugung, damit 1:1 Kopien zu erzielen. Das funktioniert auch -
soweit ich es bis jetzt beurteilen kann - einwandfrei, mit einer
einzigen, für mich unerklärbaren Ausnahme:

Das .vbs-Skript bringt wieder den selben Fehler, obwohl ja diesmal der
Pfad stimmt und die DOS-Regeln berücksichtigt:

Hier noch einmal das Skript und die Fehlermeldung:

Skript--------------------------------------------------------

' Datei: RestartReminder.vbs
'
' Funktion: Startet Reminder wie gewohnt.
' Beim Beenden von Reminder kann gewählt
' werden, ob Reminder beendet oder neu
' gestartet werden soll.

Option Explicit
Dim WshShell,Command
Dim Return,Prompt,Title,Result

Command = "C:\Progra~1\Remind5\reminder.exe"
Prompt = "Möchten Sie Reminder beenden?"
Title = "Reminder Restarter"

Set WshShell = WScript.CreateObject("WScript.Shell")
WScript.Sleep 60000
While RestartReminder()
' Leere Schleife
Wend
Set WshShell = Nothing
WScript.Quit

Function RestartReminder()
Return = WshShell.Run(Command, 1, True)
Result=MsgBox(prompt,36,title)
If Result = 6 Then
RestartReminder = False
else
RestartReminder = True
end if
End Function

Fehlermeldung---------------------------------------------------

Windows Script Host

Skript: C:\Users\wa\AppData\Roaming\Microsoft\Windows\Start
Menu\Programs\Startup\RestartReminder.vbs
Zeile: 25
Zeichen: 3
Fehler: Das System kann die angegebene Datei nicht finden.
Code: 80070002
Quelle: (null)

-------------------------------------------------------

Ich bin ratlos aber auch zuversichtlich, dass du, Ralf, der du ja auch
ohne vbs zu beherrschen die Fehler findest, auch diesmal eine Lösung
parat hast. sie sei dir jetzt schon verdankt.

Gruss
Walt Gallus
Ralf Breuer
2010-04-25 17:51:17 UTC
Permalink
Post by Ralf Breuer
Command = "C:\Progra~1\Remind5\reminder.exe"
Zeile: 25
Zeichen: 3
Fehler: Das System kann die angegebene Datei nicht finden.
Start, Ausführen, cmd
dir c:\ /x
Heißt der Ordner noch Progra~1?
--
Gruß
Ralf
Ich mag kein TOFU. Siehe http://einklich.net/usenet/zitier.htm
Bei Direkt-Mails NOSPAM entfernen
Walt Gallus
2010-04-26 04:27:48 UTC
Permalink
Post by Ralf Breuer
Start, Ausführen, cmd
dir c:\ /x
Heißt der Ordner noch Progra~1?
06.04.2010 21:04 <DIR> Program
Files
25.04.2010 19:32 <DIR> PROGRA~1 Programme

Ich habe versucht, PROGRA~1 zu ersetzen durch Program Files (ohne "")
oder Programme, ohne Erfolg.

Gruss
Walt Gallus
Ralf Breuer
2010-04-26 06:25:19 UTC
Permalink
Post by Walt Gallus
Ich habe versucht, PROGRA~1 zu ersetzen durch Program Files (ohne "")
oder Programme, ohne Erfolg.
Ich habe mal getestet. Wenn Du dreifache Gänsefüßchen benutzt, kannst Du
auch lange Dateinamen mit Leerzeichen benutzen:

Command = """C:\Program Files\Remind5\reminder.exe"""
--
Gruß
Ralf
Ich mag kein TOFU. Siehe http://einklich.net/usenet/zitier.htm
Bei Direkt-Mails NOSPAM entfernen
Walt Gallus
2010-04-26 13:49:50 UTC
Permalink
Post by Ralf Breuer
Ich habe mal getestet.
Oh - vielen Dank für die Mühe!
Post by Ralf Breuer
Wenn Du dreifache Gänsefüßchen benutzt,
Das mutet ja wirklich exotisch an. Wie kann man nur darauf kommen?
Exotisch - aber wirksam!

Dank und Gruss

Walt Gallus
Ralf Breuer
2010-04-26 14:04:52 UTC
Permalink
Post by Walt Gallus
Post by Ralf Breuer
Wenn Du dreifache Gänsefüßchen benutzt,
Das mutet ja wirklich exotisch an. Wie kann man nur darauf kommen?
Darauf bin ich schon am 11.03. gekommen ;-)
Damals meintest Du, das ginge nicht. Naja, vermutlich hattest Du einen
Tippfehler bei den vielen Gänsefüßchen ;-)
Post by Walt Gallus
Dank
bitte :-)
--
Gruß
Ralf
Ich mag kein TOFU. Siehe http://einklich.net/usenet/zitier.htm
Bei Direkt-Mails NOSPAM entfernen
Loading...