win mit App als Parameter starten

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:-) ;-) 8-) :-( :arrow: :idea: :like: :keen:
Mehr Smilies anzeigen

BBCode ist ausgeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas
   

Ansicht erweitern Die letzten Beiträge des Themas: win mit App als Parameter starten

Re: win mit App als Parameter starten

von His_Cifnes » Sa 2. Mai 2020, 22:38

Das erinnert mich an unseren Info-Unterricht, wo wir dem Infolehrer Streiche spielten.
Einmal wurde Windows direkt wieder beendet, nachdem es gestartet war, ein andermal wurde automatisch Solitär gestartet, wenn Windows startete.. und auch NUR Solitär... wurde es beendet, fuhr der Rechner wieder herunter..

Trick dabei ist der SHELL=-Wert in der uff.. war es win.ini oder System.ini? Einer der beiden.
Standardwert bei Windows 3.1 war SHELL=progman.exe

Das startet als erstes den Programm-Manager, und wenn man ihn beendet, wird auch Windows beendet.
Das klappt auch mit jedem anderen Programm.. so auch der sol.exe. : ))

Eventuell hilft Dir das ja weiter! : )
Du könntest mittels Programm die win.ini/system.ini bearbeiten und dann win.com starten. Dann startet NUR die in SHELL= angegebene Anwendung. Schliesst Du sie, beendet sich Windows wieder.

win mit App als Parameter starten

von dosbastler » Do 12. Mär 2020, 10:12

Hallo,


wie kann ich aus dem DOS Modus von Windows heraus eine Windows App starten, in dem ich

win <mein-Programm> aufrufe

Ich habe mir in Freepascal folgendes kleinens Programm geschrieben:
[quote]
{
Program CHKWIN.PAS
Check's if windows active or not.

ErrorCode = 0 WIndows not active
ErrorCode = 1 Windows is active
}
program chkwin;

uses go32,Dos;

var
ErrorCode: word;
Registr: Registers;

begin
Registr.AX := $1600;
Intr($2F,Registr);
ErrorCode := Registr.AX and $01;
Halt(ErrorCode);
end.[/quote]

Ist der Errorcode 0, ist Windows nicht aktiv, so zumindest meine Absicht. Ist der Errorcode 1 dann ist Windows gestartet und ich kann meine Windows App direkt aufrufen.

Folgende Batchdatei habe ich mir nun geschrieben:
Start.bat mit folgendem Inhalt:
[quote]
chkwin
IF ERRORLEVEL 1 GOTO START
win MeinWinProgramm
GOTO END
:START
MeinWinProgramm
:END
[/quote]

Statt MeinWinProgramm kann auch einfach ein Parameter %1 stehen, dann gebe ich mein Programm als Parameter für die Batch Datei mit:

Start MeinWinProgramm

Ziel der Akton ist, MeinWinProgram auch dann starten zu können, wenn Windows im DOS Modus läuft. Normalerweise erhate ich ja dann die Meldung "This program cannot run is DOS mode". Stattdessen aber soll dann Windows in den GUI Modus schalten und mein Programm starten.

Leider funktioniert das mit obigem Code nicht, wie beabsichtigt.

Wie also kann ich mein Ziel erreichen?

Nach oben