TProcess unter WinCE

Antworten
ml1969
Beiträge: 2
Registriert: Mo 9. Mär 2009, 17:01

TProcess unter WinCE

Beitrag von ml1969 »

Hallo,

bin neu hier im Forum, und da ich ein ähnliches Problem habe wie der TE, möchte ich hier mich anschließen.

Habe mich an das Beispiel im Lazarus-Wiki gehalten, aber ich bekomme eine Fehlermeldung.
Ich muss nun dazusagen, dass ich als "Ziel" WinCE gewählt habe, und es soweit auch ganz gut funktioniert.

Ich möchte mit TProcess eine Anwendung unter WinCe starten, aber ich bekomme eine Fehlermeldung:
Eprocess: Failed to execute \windows\explorer.exe : 87
$00034ED4
$00011784 main, line 76 of ce_test.lpr

Laut http://msdn.microsoft.com/en-us/library/ms932980.aspx bedeutet der Fehler 87 -> The parameter is incorrect.

Der entsprechende Code sieht so aus (rot makrierte Zeile ist die Line 76)

Code: Alles auswählen

Var AProcess: TProcess;
.....
 
       AProcess := TProcess.Create(nil);
 
       AProcess.CommandLine := '\windows\explorer.exe';
       //AProcess.Options := AProcess.Options + [poWaitOnExit];
       AProcess.Execute;
       AProcess.Free;


Wenn ich das ändere und so aufrufe:

Code: Alles auswählen

SysUtils.ExecuteProcess('\windows\explorer.exe',[]);


funktioniert alles soweit richtig, aber ich habe ja hier keinen weiteren Einfluss mehr auf den Process und den will ich schon haben.

Welcher Parameter könnte denn Fehlen, oder übersehe ich einfach was?
Die Anwendung soll nur unter WinCE laufen.

Michael
Zuletzt geändert von monta am Di 10. Mär 2009, 16:56, insgesamt 1-mal geändert.
Grund: Code-Tags gesetzt, monta.

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Re: TProcess unter WinCE

Beitrag von monta »

geht es eventuell, wenn du testweise AProcess.Options := [] setzt, um Wechselwirkungen mit den Optionen zu vermeiden?
Johannes

ml1969
Beiträge: 2
Registriert: Mo 9. Mär 2009, 17:01

Re: TProcess unter WinCE

Beitrag von ml1969 »

@ monta: Danke fürs das Verschieben und korrigieren :oops:

Ok also hab das nun nach deinen vorschlägen geändert, leider kein Erfolg :cry:

Code: Alles auswählen

AProcess := TProcess.Create(nil);
       AProcess.CommandLine := '\windows\explorer.exe';
       AProcess.Options := [];
       AProcess.Execute;
       AProcess.Free;


Unter VAR steht natürlich

Code: Alles auswählen

AProcess : TProcess;


Das "Programm" soll einfach (mal für den Anfang) den Explorer aufrufen und danach noch was anderers... egal was, control.exe ...etc pp..
Leider geht das hiermit

Code: Alles auswählen

SysUtils.ExecuteProcess('\windows\explorer.exe',[]);


nicht, da ja erst darauf gewartet wird, dass der Explorer beendet wird. (Der Befehl ansich funktioniert aber tadellos :!: )

Michael

monta
Lazarusforum e. V.
Beiträge: 2809
Registriert: Sa 9. Sep 2006, 18:05
OS, Lazarus, FPC: Linux (L trunk FPC trunk)
CPU-Target: 64Bit
Wohnort: Dresden
Kontaktdaten:

Re: TProcess unter WinCE

Beitrag von monta »

ml1969 hat geschrieben:@ monta: Danke fürs das Verschieben und korrigieren :oops:


kein Problem.

Bei dem Rest kann ich dir aber nicht weiter helfen.
Johannes

Antworten