c0d3.r3d
Goto Top

VBS - If-(not)Exists Skriptfrage mit Programmstart

Hallo zusammen,

ich stehe etwas auf dem Schlauch. Mit VBS habe ich bisher noch keine Erfahrungen sammeln können, weswegen ich etwas Hilfe benötige. Folgendes soll das Skript können:
  • Prüfe, ob Datei XY (mit Leerzeichen im Namen) exestiert
  • falls ja, starte Programm A,
  • falls nicht starte Programm B.
  • beende Skript

Folgenden Ansatz hatte ich bereits:
Option Explicit
DIM fso    
Set fso = CreateObject("Scripting.FileSystemObject")  
Set WShell = CreateObject("Wscript.Shell")  

If (fso.FileExists("DateiXY")) Then  
  WShell.Exec("ProgrammA")  
  WScript.Quit()
Else
  WShell.Exec("ProgrammB")  
End If

WScript.Quit()

Wahrscheinlich ist es viel einfacher als ich es mir gerade vorstelle.

Grüße

Content-Key: 595615

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

Printed on: April 24, 2024 at 20:04 o'clock

Member: beidermachtvongreyscull
Solution beidermachtvongreyscull Aug 12, 2020 updated at 18:39:17 (UTC)
Goto Top
Hi,

der Ansatz ist doch ok. Wo liegt denn Dein Problem?

Ein Hinweis:
"Option Explicit" erfordert, dass jede verwendete Variable auch deklariert sein muss (wie in Zeile 2).
Wenn Du "WShell" ebenfalls deklarierst, sollte ein Schuh draus werden.
Member: c0d3.r3d
c0d3.r3d Aug 12, 2020 at 20:12:46 (UTC)
Goto Top
Hallo,

das Problems ist, dass mir dieser Schnipsel Fehlermeldungen bringt. (Hab jetzt gerade keinen PC zur Hand um die Meldung zu zeigen).


Wie deklariere ich dann WShell? Ebenfalls mit DIM davor?
Member: em-pie
Solution em-pie Aug 12, 2020 at 20:29:56 (UTC)
Goto Top
Moin,

Also mit den Fehlermeldungen wirst du immer im WWW fündig. Da braucht es kein Forum für, wenngleich wir die gerne helfen.


Wenn du selbst recherchierst, ist das nachhaltiger.

Zu deiner letzten Frage: in VBS/ VBA wird per DIM deklariert. Du kannst auch mehrere Variablen hintereinander deklarieren:

 DIM objFSO, objVar, objWShell

Ist das gleiche wie
DIM objFSO
DIM objVar
DIM objWShell

Ich persönlich „gruppiere“ die Varieblen immer:
Alle integer sind ein einem DIM, alle Objekte oder alle Strings
Das ist aber Kosmetik

Gruß
em-pie