64965
Goto Top

.vbs Script innerhalb einer Batch Datei

Hi,

ich habe 2 Scripte: eine kleine Batch-Datei und ein .vbs-Script. Wenn ich beide in einen Ordner packe und dem Batch Script den Pfad zum .vbs angebe und es ausführen lasse funktioniert das auch.
Das möchte ich aber gerne vermeiden und beide Scripte in einem haben.
Gibt es eine Möglichkeit wie mit PHP zB <?php ...?> Visual Basic einzubinden oder umgekehrt?

Grüße

Content-Key: 115389

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

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

Member: WiSch
WiSch May 06, 2009 at 08:25:45 (UTC)
Goto Top
Hallo cphowdy,

ich bin mir eigentlich ziemlich sicher, daß das nicht geht...
Also entweder weiterhin das VBS aus der Batch heraus aufrufen oder direkt alles als VBS schreiben...

Hier ein Beispiel wie man eine Wartepause aus der Batch heraus via VBS integrieren kann (wenn z.B. die sleep.exe nicht vorhanden ist):
REM Wartepause per VBS 
REM 1 Sekunde = 1000 Millisekunden / 3 Minuten = 180000 Millisekunden
echo >wait.vbs wscript.sleep 180000
cscript wait.vbs
del wait.vbs 

Ggf. können noch Scriptconverter helfen, die BAT und VBS z.B. in EXE wandeln... ?
Mitglied: 77559
77559 May 06, 2009 at 08:36:24 (UTC)
Goto Top
Du kannst zwar den Code in einer Datei transportieren,
aber zum Ausführen musst du die Teile wieder wegen der erwarteten Erweiterung cmd/bat vbs trennen.
Dafür gibt es Techniken wie zum Beispiel hier:

::GetMyDocs.cmd::::::::::::::::::::::::::::::::::::::::::::::::::::::
@echo off&setlocal&set "vbs=%~dpn0.vbs"  
Type NUL >"%vbs%"  
(set _=^>^>"%vbs%" echo)&call :GenVBS  
for /F "delims=" %%A in ('cscript /Nologo %vbs%') do set Mydocs=%%A  
del /Q "%vbs%" >NUL  
endlocal&set "EigeneDateien=%MyDocs%"&Set Eigene  
goto :eof
:GenVBS
%_% set WshShell = WScript.CreateObject("WScript.Shell")  
%_% wscript.echo WshShell.SpecialFolders("MyDocuments")  

Es benutzt ein on the fly erstelltes vbscript um über WshShell.SpeciaöFolders den Ordner für die Eigene Dateien zu ermitteln.

Gruß
LotPings