Probleme mit CreateProcess
-
Hallo Forum
Ich erstelle ein Programm mit dem ich mehrere Installationsroutinen nacheinander ausführen möchte. Das ausführen mache ich mit CreateProcess, weil ich ein Handle des Prozesses zurück bekommen möchte. Hier ersteinmal der Code(Teilweise):
TStartupInfo si; TProcessInformation pi; . . . { s_Filename.insert(0,lb_aus->Items->Strings[i].c_str() s_Filename.insert(0,"Installer\\"); Edit1->Text=s_Filename.c_str(); si.cb = sizeof(si); si.dwFlags = STARTF_USESHOWWINDOW; CreateProcess(s_Filename,NULL,NULL,NULL,0 ,CREATE_DEFAULT_ERROR_MODE || CREATE_NEW_CONSOLE || NORMAL_PRIORITY_CLASS,NULL,NULL,&si,&pi)) WaitForSingleObject(pi.hProcess,INFINITE); s_Filename.clear(); }
Leider werden die Programme nur mit 68k Speicherauslastung ausgeführt und das Fenster dazu erscheint nicht. es wird also nur der Prozess mit 68k ausgeführt.
Woran könnte das liegen?
Danke schonmal
Mfg THPS
-
1. Falsches Forum, CreateProcess gehört in die WinAPI.
2. Richtiges Forum, du kannst kein C oder C++ ... naja, so schlimm ist es auch wieder nicht, aber:CREATE_DEFAULT_ERROR_MODE || CREATE_NEW_CONSOLE || NORMAL_PRIORITY_CLASS
Das ist die Boolsche-Oder-Verknüpfung und nicht Bitweise-Oder-Verknüpfung. Du meinst wohl eher das hier:
CREATE_DEFAULT_ERROR_MODE | CREATE_NEW_CONSOLE | NORMAL_PRIORITY_CLASS
Grüssli
-
Dieser Thread wurde von Moderator/in evilissimo aus dem Forum C++ in das Forum VCL (C++ Builder) verschoben.
Im Zweifelsfall bitte auch folgende Hinweise beachten:
C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?Dieses Posting wurde automatisch erzeugt.
-
Für das StartupInfo würde ich noch wShowWindow hinzufügen.
Dies könnte der Grund sein, warum das Fenster nicht erscheint.Ich fülle sie meistens so:
STARTUPINFO startInfo; memset(&startInfo, 0, sizeof(STARTUPINFO)); startInfo.cb = sizeof(STARTUPINFO); startInfo.dwFlags = STARTF_USESHOWWINDOW; startInfo.wShowWindow = SW_SHOW;
-
sorry . . . ich war ausversehen mit dem einem Tab noch im C Forum und habs dann wohl verpeilt : )
@Dravere
Du hast in beiden Punkten rechtBin noch dabei C zu lernen und beginne gerade mich mit WinApi richtig zu beschäftigen, hab auch schon mal meinen Lehrer drüber kucken lassen das mit den Verknüpfungen hätte ihn auffallen müssen!
Danke euch erstmal ich werde das nachher mal austesten!
EDIT: Ich habs getestet, es funktioniert einwandfrei!