Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

(VBS) Scriptproblem

Frage Entwicklung VB for Applications

Mitglied: ZoeSkotos

ZoeSkotos (Level 1) - Jetzt verbinden

24.01.2008, aktualisiert 26.01.2008, 5297 Aufrufe, 5 Kommentare

Ich habe folgendes VBS zum automatisierten Starten eines Programmes:
sProcessName = "programm.exe"
' Hier die Ausführbare Datei der zu überwachenden Applikation angeben
01.
sComputer = "."    
02.
Set oWmi = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & sComputer & "\root\cimv2") 
03.
 
04.
Set oShell = CreateObject("WScript.Shell") 
05.
 
06.
Do 
07.
  Set colProcessList = oWmi.ExecQuery("Select * from Win32_Process Where Name = '" & sProcessName & "'") 
08.
 
09.
  If colProcessList.Count = 0 Then 
10.
     oShell.Run "G:\Programme (x86)\Programm\Unterordner\Programm.exe", 1, False    
11.
     ' Hier den Pfad zur überwachenden Applikation angeben 
12.
   End If 
13.
 
14.
  WScript.Sleep 1000        
15.
 
16.
Loop
Doch wenn es plötzlich (durch einen eigenen Absturz) beendet wird, wird nur der Windows Explorer mit dem Pfad G:\Programme aufgerufen. Nun meine Frage: wie stelle ich es an, daß genau das Programm (nach Absturz) ausgeführt und nicht der Explorer geöffnet wird?

Ich habe es auch schon mit DOS Namen (8.3) versucht, funktionierte auch nicht.

Vielen Danke für die Antworten, Zoé
Mitglied: ZoeSkotos
24.01.2008 um 05:49 Uhr
Es war mir möglich mein Problem selbst zu lösen, es haben einfach drei Anführungsstriche gehört, dennoch habe ich nun eine zweite Frage: wie hänge oder inizialisiere ich eine Datei gleichzeitig mit der Ausführung des Programmes?
Bitte warten ..
Mitglied: willchisum
24.01.2008 um 08:07 Uhr
richtig, wenn ein Leerzeichen im Pfad, wie zB bei "C:\program Files ..." o.ae. ist dann muss der Pfad nochmal in Anfuehrungszeichen = chr(34) gesetzt werden.

Die zweite Frage habe ich nicht verstanden?
Bitte warten ..
Mitglied: ZoeSkotos
24.01.2008 um 12:35 Uhr
Mein VBS sieht folgendermaßen aus:
sProcessName = "privoxy.exe"
' Hier die Ausführbare Datei der zu überwachenden Applikation angeben

sComputer = "."
Set oWmi = GetObject("winmgmts:{impersonationLevel=impersonate}!\\" & sComputer & "\root\cimv2")

Set oShell = CreateObject("WScript.Shell")

Do
Set colProcessList = oWmi.ExecQuery("Select * from Win32_Process Where Name = '" & sProcessName & "'")

If colProcessList.Count = 0 Then
oShell.Run """G:\Programme (x86)\Vidalia Bundle\Privoxy\privoxy.exe"""&"""G:\Programme (x86)\Vidalia Bundle\Privoxy\config.txt"""&"""G:\Programme (x86)\Vidalia Bundle\Privoxy\standard.action"""
' Hier den Pfad zur überwachenden Applikation angeben
End If

WScript.Sleep 1000
' Hier kann die Wartezeit bis zur nächsten Prüfung eingestellt werden. Standard: 5 min
Loop

Es soll den Privoxy inizialisieren wenn dieses Programm abstürzt, da kommt häufig vor da ich ein x64 System fahre (Windows Server 2003 Enterprise x64 Edition); nur beim dritten Aufrufe hapert es und diese lädt nicht dies Datei, wie also schreibe ich ein Script, das mir alle Dateien lädt dir Privoxy braucht, denn es sind sicher noch ein paar.

Danke im Voraus, Zoé
Bitte warten ..
Mitglied: willchisum
25.01.2008 um 08:29 Uhr
Was fuer eine Fehlermeldung gibt's denn?
Evtl. mal das Skript mal in einer DOS-Box (cmd.exe) mit
01.
cscript deinscript.vbs
aufrufen und Fehlermeldung anschauen. bzw hilft vielleicht ein Leerzeichen hinter der ersten Datei (...config.txt)?
Bitte warten ..
Mitglied: bastla
26.01.2008 um 18:47 Uhr
Hallo ZoeSkotos!

Sieht so aus, als würden (wie auch von willchisum angemerkt) bei Deinem "Run"-Befehl Programmname und übergebene Argumente ohne Leerzeichen aneinandergefügt - versuch es so:
01.
... 
02.
strRun = Chr(34) & "G:\Programme (x86)\Vidalia Bundle\Privoxy\privoxy.exe" & Chr(34) & " " & Chr(34) & "G:\Programme (x86)\Vidalia Bundle\Privoxy\config.txt" & Chr(34) & " " & Chr(34) & "G:\Programme (x86)\Vidalia Bundle\Privoxy\standard.action" & Chr(34) 
03.
oShell.Run strRun
Wenn Du zuerst den Command-String in einer Variablen ("strRun") zusammenstellst, kannst Du ihn zur Kontrolle ausgeben (am besten über "WScript.Echo" und Start des Scripts über "cscript" - so kannst Du ihn leicht kopieren) und ihn dann auch direkt unter CMD austesten:
01.
D:\Test>cmd /k "DeinString"
Im konkreten Fall wäre dies
01.
D:\Test>cmd /k ""G:\Programme (x86)\Vidalia Bundle\Privoxy\privoxy.exe" "G:\Programme (x86)\Vidalia Bundle\Privoxy\config.txt" "G:\Programme (x86)\Vidalia Bundle\Privoxy\standard.action""
Grüße
bastla
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
gelöst VBS Script in eine Textdatei ausgeben (VBS mit Batch zusammenführen) (5)

Frage von Luuke257 zum Thema Batch & Shell ...

Batch & Shell
gelöst Hilfe Bei einem vbs Script (19)

Frage von Hattori-Hanzo zum Thema Batch & Shell ...

Batch & Shell
gelöst Vbs programm unabhängig vom Speicherort ausführen (2)

Frage von Markus2016 zum Thema Batch & Shell ...

VB for Applications
gelöst VBS Ordner erstellen - wenn nicht vorhanden! (1)

Frage von freshman2017 zum Thema VB for Applications ...

Neue Wissensbeiträge
Windows Server

Umstellung SHA 1 auf SHA 2 - Migration der CA von CSP auf KSP

Tipp von Badger zum Thema Windows Server ...

Windows 10

Quato DTP94 unter Windows 10 x64 installieren und verwenden

Anleitung von anteNope zum Thema Windows 10 ...

Windows 10

Win10 1703 und Nutzerkennwörter bei Ersteinrichtung - erstaunliche Erkenntnis

(15)

Erfahrungsbericht von DerWoWusste zum Thema Windows 10 ...

Heiß diskutierte Inhalte
Windows 10
Windows 10 im Unternehmen? (26)

Frage von zorlayan zum Thema Windows 10 ...

LAN, WAN, Wireless
Ping u. DNS geht am Rechner nicht mehr (19)

Frage von Kuemmel zum Thema LAN, WAN, Wireless ...

Festplatten, SSD, Raid
Raid 1 2 SSD mit Windows Server 2016 (17)

Frage von jaywee zum Thema Festplatten, SSD, Raid ...