15,467
社区成员




TCHAR szApp[] = _T("Notepad");
STARTUPINFO si = { sizeof(si) };
PROCESS_INFORMATION pi = {0};
if(CreateProcess (NULL, szApp, NULL, NULL, FALSE, DEBUG_ONLY_THIS_PROCESS, NULL, NULL, &si, &pi))
{
DEBUG_EVENT evt = {0};
while (EXIT_PROCESS_DEBUG_EVENT != evt.dwDebugEventCode)
{
if (WaitForDebugEvent(&evt, 100))
{
ContinueDebugEvent(evt.dwProcessId, evt.dwThreadId, DBG_CONTINUE);
}
MSG msg;
while(PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
{
if(WM_PAINT == msg.message)
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
}
CloseHandle(pi.hThread);
CloseHandle(pi.hProcess);
::SetForegroundWindow(GetSafeHwnd());
}