Пытаюсь получить process id следующим образом:
DWORD FindProcessId(string processName)
{
PROCESSENTRY32 processInfo;
processInfo.dwSize = sizeof(processInfo);
HANDLE processSnapshot = CreateToolhelp32Snapshot(TH32CS_SNAPPROCESS, NULL);
if (processSnapshot == INVALID_HANDLE_VALUE)
return 0;
Process32First(processSnapshot, &processInfo);
if (!processName.compare(processInfo.szExeFile))
{
CloseHandle(processSnapshot);
return processInfo.th32ProcessID;
}
while (Process32Next(processSnapshot, &processInfo))
{
if (!processName.compare(processInfo.szExeFile))
{
CloseHandle(processSnapshot);
return processInfo.th32ProcessID;
}
}
CloseHandle(processSnapshot);
return 0;
}
Но ругается на string process name
:
невозможно преобразовать аргумент 1 из "WCHAR [260]" в "const _Elem *const " with [ _Elem=char ]
Как его объявить правильно?
Несоответствие используемых строк C и C++.
Или компилируйте БЕЗ поддержки Unicode, просто ANSI (тогда C-строки будут char*
, а не wchar_t*
), или используйте соответствующие строки C++ - не string
, а wstring
.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Хотите улучшить этот вопрос? Обновите вопрос так, чтобы он вписывался в тематику Stack Overflow на русском
Такая проблемка: В проге есть объект- игрок, он умеет двигатьсяИ вот, при зажатой клавише W,A,S,D он начинает двигаться с небольшой задержкой(как...