CreateProcess problem...
-
Huhu leute ich habe ein kleines problem.
Ich möchte einen neuen Prozess aufrufen in meiner exe
char lol[300];
int i;
for(i=1; i < argc; i++)
{
sprintf(lol, "%s ",argv[i]);
CreateProcess(NULL,lol,NULL,NULL,FALSE,0,NULL,NULL,&si,&pi);Dieses geht nicht , mein prog soll aber wenn es
prog.exe anderesprog.exe -u parameter paramter2
anderesprog.exe -u parameter paramter2 so aufrufen, dies tut er aber leider nicht, was ich nicht verstehe.
Wäre nett wenn jemand da weiß wie das funktioniert, oder wo der fehler sein könnte.
lG Baduhamma
-
STARTUPINFO si; PROCESS_INFORMATION pi; memset(&si,0,sizeof(si)); memset(&pi,0,sizeof(pi)); si.cb =sizeof(si); char prog[MAX_PATH]; char args[MAX_PATH]; GetWindowsDirectory(prog,sizeof(prog)); strlcat(prog,"\\Notepad.exe",sizeof(prog)); strlcpy(args,prog,sizeof(args)); strlcat(args," ...Params...",sizeof(args)); CreateProcess(prog,args,0,0,TRUE,CREATE_DEFAULT_ERROR_MODE,0,".",&si,&pi); CloseHandle(pi.hProcess);
-
Den *ersten* Parameter solltest Du *immer* auf NULL lassen! Damit kommen die meisten Programme nicht zurecht, da sie als 1. Parameter den EXE-Namen selber erwarten (was dann nicht mehr der Fall ist).