В настоящее время я должен завершить свой процесс после того, как основной процесс завершен.
Вот пример кода.
void sleep_call_back(void*)
{
STARTUPINFO si = { 0 };
PROCESS_INFORMATION pi = { 0 };
bool result = CreateProcess(TEXT("C:\\WDog\\Debug\\WDog.exe"),
NULL, NULL, NULL, FALSE, NULL, NULL, NULL, &si, &pi);
std::cout << "Time is Over" << std::endl;
TerminateProcess(GetCurrentProcess(), 0);
}
int main(void)
{
const char* sleep = "Sleep";
Watchdog wath_dog(sleep, sleep_call_back, 0);
wath_dog.StartTicker(2 * 1000);
while (1)
{
int a = 1;
}
wath_dog.StopTicker();
return 0;
}
В настоящее время просто вызовите один раз. Я хочу, чтобы программа продолжала выключаться и включаться.
Я думаю, что когда она возвращается, не может найти CurrentProcess.
Есть ли какой-нибудь хороший способ найти текущий процесс?