Zitat von LigHDas sind aber alles DOS-Compiler. Mit denen kann man nicht auf die Windows-Registry zugreifen, und auch nicht ihr eigenes Fenster selbst verstecken. Für den Zweck wären sie also nutzlos.
Au. Das wusste ich nicht. Denn bei SWAG war ein Beispiel, womit man zumindest feststellen konnte, ob Windows läuft. DOS greift auch nicht auf die Registry zu, sondern versucht eine Variable %OS% auszulesen.
Zitat von LigHDas belastende Beiwerk eines Compilers macht nämlich bei so winzigen Aufgaben, wie sie hier besprochen wurden, mindestens noch 80% der Dateigröße dieser EXE aus.
Von der Effektivität her gesehen ist dies sehr sehr viel.
Zitat von LigHObwohl - spielt ja heute keine Rolle mehr, ob es z.B. 400 oder 40'000 Bytes sind, oder?
Eigentlich nicht. Wenn man bedenkt, dass man früher mit 640 kB Arbeitspeicher auskommen konnte und heute zum Teil 256 MB nicht mehr ausreichen...
Zitat von LigHDeswegen habe ich ja so sehr auf die Optimierung der Batch-Datei gesetzt, um eine EXE vermeiden zu können.
Die Autorun.inf sieht jetzt so aus:
[autorun] icon=dvd.ico open=command.com /c start /m start.bat shellexecute=start /min start.bat
Die start.bat habe ich nicht weiter geändert.
@Echo off
IF %OS%'==Windows_NT' Goto WinNT
:Win9x
mpc_98me\mplayerc.exe MPEG2\AVSEQ01.MPG
Goto End
:WinNT
mpc_2kxp\mplayerc.exe MPEG2\AVSEQ01.MPG
:End
exit
Alles anzeigen
Im großen und ganzen ist das in Ordnung so.
Für WinXP ist SHELLEXECUTE eine gute Lösung. Es blitzt ja nur ein Fenster auf. Ich denke, es ist der Aufruf des MPC.
Bei Win98SE wird OPEN ausgeführt. Der Parameter /m hinter START führt dazu, dass die START.BAT minimiert ausgeführt wird. Deshalb sind nur ein Fenster der MS-DOS Eingabeaufforderung (COMMAND) und das Fenster beim Aufruf des MPC sichtbar.
Zur weiteren Optimierung wäre deshalb zu überlegen/prüfen, ob in der Autorun.inf bei OPEN der Teil COMMAND /C wirklich benötigt wird. Ausserdem könnte man eventuell die Aufrufe des MPC minimieren.
Der MPC startet unter Win98SE im Vollbild-Modus, unter WinXP im Normalfenster. Da muss ich noch den Schalter /fullscreen hinzufügen.
Die Anleitung habe ich jetzt in die Homepage integriert.
http://fr-an.de/vcdeasy/a08/index.htm