我有一个正在编写的C++ DLL,需要检查特定进程是否正在运行。C++检查特定进程是否正在运行
DLL将被启动的应用程序会在运行:
c:\Directory\application.exe
有内一个子目录中有其他可执行:
c:\Directory\SubDirectory\application2.exe
什么DLL需要做的,当它运行时检查application2.exe是否正在运行,最重要的是它在该文件夹中运行 - 将会运行多个副本,因此我们需要确保正确的运行。
我有下面的代码,在检测到application2.exe运行运作良好,但它并不需要的文件路径考虑:
HANDLE pss = CreateToolhelp32Snapshot(TH32CS_SNAPALL, 0);
PROCESSENTRY32 pe = { 0 };
pe.dwSize = sizeof(pe);
if (Process32First(pss, &pe))
{
do
{
if(wcscmp(pe.szExeFile, L"application2.exe") == 0)
{
CloseHandle(pss);
return (1);
}
}
while(Process32Next(pss, &pe));
}
CloseHandle(pss);
我如何检查的路径进程匹配调用DLL的应用程序的路径?
“运行withing该文件夹”是一个非常模糊的状态。有一个当前工作目录的概念,你的意思是? – MSalters