本文介绍了如果另一个进程被杀死,则杀死我的进程的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想编写一个代码来启动一个进程并在另一个进程被杀死时杀死我的进程.
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);
这篇关于如果另一个进程被杀死,则杀死我的进程的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!