Получение ID процесса
Как исправить данную проблему, использую QT C++. Нужно получить PID запущенного приложения
DWORD GetProcessID(const char* processName)
{
if (!processName) return 0;
DWORD id = 0;
HANDLE hSnap = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, 0);
if (hSnap) {
PROCESSENTRY32 pe32 = { sizeof(PROCESSENTRY32) };
if (Process32First(hSnap, &pe32)) {
while (Process32Next(hSnap, &pe32)) {
if (strcmp(processName, pe32.szExeFile) == 0) {
id = pe32.th32ProcessID;
break;
}
}
}
CloseHandle(hSnap);
}
return id;
}
Ответы (1 шт):
Автор решения: Harry
→ Ссылка
Да просто раз уж работаете с Unicode и широкими символами, то не используйте strcmp, каковая работает только для "узких".
wcscmp вам в помощь...
Да, и вместо const char* processName используйте широкую строку.
