本文介绍了如果其他进程被杀死,则杀死我的进程的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想编写一个启动一个进程并在另一个进程被杀死时杀死我的代码.
I want to write a code that starts a process and kills mine when the other process is killed.
您知道好的解决方案吗?
Do you know good solutions?
我当前的代码:
std::string exeFile{ ExePath() + "\\DTMlibrary.exe" };
if (is_file_exist(exeFile.c_str()))
{
ShellExecute(NULL, "open", exeFile.c_str(), NULL, NULL, SW_SHOWDEFAULT);
EndDialog(0);
}
else
{
MessageBox("Setup DTMlibrary.exe not found ", "System Information", MB_ICONINFORMATION);
EndDialog(0);
}
推荐答案
SHELLEXECUTEINFO ShExecInfo = { 0 };
ShExecInfo.cbSize = sizeof(SHELLEXECUTEINFO);
ShExecInfo.fMask = SEE_MASK_NOCLOSEPROCESS;
ShExecInfo.hwnd = NULL;
ShExecInfo.lpVerb = NULL;
ShExecInfo.lpFile = exeFile.c_str();
ShExecInfo.lpParameters = "";
ShExecInfo.lpDirectory = NULL;
ShExecInfo.nShow = SW_SHOW;
ShExecInfo.hInstApp = NULL;
ShellExecuteEx(&ShExecInfo);
ShowWindow(SW_HIDE);
WaitForSingleObject(ShExecInfo.hProcess, INFINITE);
EndDialog(0);
这篇关于如果其他进程被杀死,则杀死我的进程的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!