Create process
Fra mit Borland c++ program laver jeg en cretae process til et andet exe program. Jeg kalder createprocess med wShowWindow = SW_HIDE for at skjule applikationen. Men det ser ikke ud til at virke på alle pc'er selv om det kører samme OS.char* MsgPtr;
AnsiString msg;
memset(&pi_d, 0, sizeof(pi_d));
memset(&si_d, 0, sizeof(si_d));
si_d.cb = sizeof(si_d);
si_d.dwFlags = STARTF_USESHOWWINDOW;
si_d.wShowWindow = SW_MINIMIZE;
if(IniFile->ReadInteger("Config", "HIDE_DEMO_SDK_APP", 0))
{
si_d.wShowWindow = SW_HIDE;
}
else
{
si_d.wShowWindow = SW_MINIMIZE;
}
if (CreateProcess(NULL, "DemoApp.exe", 0, 0, 0, 0, 0, ".", &si_d, &pi_d) == true ||
CreateProcess(NULL, "c:\\Tools\\DemoApp.exe", 0, 0, 0, 0, 0, ".", &si_d, &pi_d) == true)
{
// CloseHandle(pi_d.hThread);
// CloseHandle(pi_d.hProcess);
return true;
}
else
{
FormatMessage(FORMAT_MESSAGE_ALLOCATE_BUFFER | FORMAT_MESSAGE_FROM_SYSTEM, NULL, GetLastError(), 0, (LPTSTR)&MsgPtr, 0, NULL);
msg = MsgPtr;
msg = msg + "\n\"DemoApp.exe\" shall either be in work directory";
msg = msg + "\nor in \"c:\\Tools\\\"";
MessageBox(NULL, msg.c_str(), "Could not open DemoApp application", MB_OK | MB_ICONSTOP | MB_SETFOREGROUND);
return false;
}
Nogen bud