VBS in exe umwandeln

chnooorzi

New member
20 Oktober 2009
2
0
Hallo

Ich habe eine vbs-Datei und möchte diese in eine exe umwandeln.
Weiss jemand wie ich das machen kann?
Die vbs to exe converter bringen leider nichts, da der loop danach nicht mehr richtig funktioniert.
Hier das Script:

Code:
set shell = CreateObject("WScript.Shell")

stunden= hour(now)
minuten = minute(now)

do until minuten = 00 and stunden = 21

wscript.sleep 15000

stunden= hour(now)
minuten = minute(now)

loop

shell.run "shutdown.exe"

Danke

Gruss Chnooorzi
 
Welche Entwicklungsumgebung benutzt du? In VB kannst du ganz einfach per Menübefehl kompilieren.

Tipp: Spar dir sowas. Nimm den Windows-Taskplaner, wenn du den Rechner um eine bestimmte Uhrzeit runterfahren lassen willst ;)
 
Ach, kann Visual Basic neuerdings auch VBS kompilieren?


Ich verstehe nicht ganz wozu das gut sein soll, unter Windows wird VBS doch vom WSH interpretiert und ausgeführt, deshalb kann ich ja ein VBS auch direkt von der Kommandozeile aus starten oder aus dem Explorer. Bin ich nicht unter Windows geht das VBS eh nicht, weil das alles Windows-spezifische Sachen sind.


Wozu also die EXE? Willst Du den Code unsichtbar machen? Wenn ja warum? Ggf. wäre dann VBE eine Alternative (E wie encrypted). Wobei mir das bei dem Beispiel nicht einleuchtet, was ist daran so geheim?


Allgemein fallen mir zum Thema VBS und Code unsichtbar machen keine sehr positiven Anwendungen ein... :-?


Und wie tH schon sagte, was Du da machen willst geht mit dem Taskplaner viel einfacher. Es sei denn, es soll gegen den Willen des Nutzers geschehen... :-?
 
Es handelt sich um ein Schulprojekt.
Ich brauche eine EXE weil VBS bei uns in der Schule
gesperrt ist.
Auftrag ist, ein "Programm" zu schreiben, welches um 21:00 Uhr
ein Programm aufruft, welches den Computer in 15 mins herunterfährt.
Das Programm zum Herunterfahren habe ich mit VB gemacht. Jetzt fehlt
nur noch eine EXE mit der ich diese EXE um 21 Uhr aufrufen kann.
Also man könnte das ganze Natürlich auch in einem Programm machen, da
ich aber den 2. Teil bereits habe, brauche ich nur noch den Aufruf...

Danke für die Antworten =)
 
Is das kein normaler Basic-Code? Ich bin davon ausgegangen VBS wäre die Dateierweiterung für irgendn Basic-Projekt.

Nicht wirklich, das ist VBScript. Eine Scriptsprache die vom Windows Scripting Host interpretiert wird. Steht für mich irgendwo zwischen Batch-Dateien und JavaScript, kann halt Dateioperationen aber auch auf COM-Objekte zugreifen und Meldungen in Fenstern anzeigen, so bisschen Zeugs halt. Die Syntax ist stark an VB angelegt ja. Weil der Outlook mal so schlau war, an E-Mails angehängte VBS direkt auszuführen stellten die 'ne Weile ein ziemliches Sicherheitsrisiko dar, deshalb werden sie wohl auch gesperrt sein auf den Schulrechnern.

Trotzdem, VBS ist und bleibt aber eine Scriptsprache, was es schon stark von VB unterscheidet.

Es handelt sich um ein Schulprojekt.
Ich brauche eine EXE weil VBS bei uns in der Schule
gesperrt ist.

Wenn ihr dafür VBS nehmen dürftet wäre es nicht gesperrt. Also sollt ihr es wohl nicht in VBS machen, hm?

Auftrag ist, ein "Programm" zu schreiben, welches um 21:00 Uhr ein Programm aufruft, welches den Computer in 15 mins herunterfährt.
Das Programm zum Herunterfahren habe ich mit VB gemacht. Jetzt fehlt
nur noch eine EXE mit der ich diese EXE um 21 Uhr aufrufen kann.
Also man könnte das ganze Natürlich auch in einem Programm machen, da
ich aber den 2. Teil bereits habe, brauche ich nur noch den Aufruf...

Und wieso macht das "Programm zum Runterfahren" nicht selbst das, was Du im Moment im VBS hast? Es kann doch alleine darauf warten bis es 21:00 ist, dazu braucht es doch kein VBS?

Wenn der Auftrag explizit ist, dass ein Programm ein anderes aufruft geht das immer noch so: anstatt das in 'nem VBS zu machen, machst Du halt mit VB ein echtes Programm daraus was wartet und dann das andere aufruft.


Komische Aufgabenstellung irgendwie. Ist der Lehrer dann 21:00 da und prüft nach ob auch wirklich alle Rechner runterfahren? :ugly:
 
Ich habe eine vbs-Datei und möchte diese in eine exe umwandeln.
Weiss jemand wie ich das machen kann?
Nö, aber wenn es kein VBS sein muss, das da sollte unter FreeBASIC das selbe tun.

Code:
'Wir wollen VB Befehle nutzen
#include "vbcompat.bi"

'fbc hat im vollen Modus immer "OPTION EXPLICIT" an, also deklarieren.
dim as double curtim

do
	'Zeitstempel holen
	curtim = now
	'Prüfen
	if hour(curtim) = 21 and minute(curtim) = 0 then exit do
	'Wenn nicht, dann warten wir eine Sekunde
	sleep 100
loop

'Gut, wir können runterfahren.
shell "shutdown /s /t:10 ""Rechner fährt durch Zeitevent runter!"""
 
Tipp:

Bat-Dateien könnten helfen:

Code:
shutdown -s -t 3600

shutdown = der eigentliche befehl
-s = sagt dem shutdown-befehl, dass er den rechner ausschalten soll
-t 3600 = sagt dem shutdown-befehl, dass er 3600 sekunden warten soll dafür.

wenn du mittels
Code:
shutdown /?
in der Kommandozeile (WIndowsTaste + R > cmd) mal guggst, kann man da noch n bissl mehr einstellen :)

Wichtig: Zum Testen solltest du dir ne bat-datei mit

Code:
shutdown -a

bereithalten, um den laufenden counter zu stoppen :) (anders wirst den nämlich nich so einfach stoppen können :))

Aber wenn auf dem Rechner vbs gesperrt ist, wärs eh sinnlos da nen solches programm draufzupacken. Naja. Jedem wie er will :) ;)
 

Ähnliche Themen