#571 Restore the original windows getProcessCode() because Microsoft's GetModuleFileName isn't effective!

v0.27.3
Robin Mills 7 years ago committed by Luis Díaz Más
parent 108509a089
commit 23483dff86

@ -464,10 +464,15 @@ namespace Exiv2 {
{
std::string ret("unknown");
#if defined(WIN32)
HANDLE processHandle = NULL;
processHandle = OpenProcess(PROCESS_QUERY_INFORMATION | PROCESS_VM_READ, FALSE, GetCurrentProcessId());
if (processHandle != NULL) {
TCHAR filename[MAX_PATH];
if ( GetModuleFileName( (HMODULE)"", filename, MAX_PATH ) != 0 ) {
if (GetModuleFileNameEx(processHandle, NULL, filename, MAX_PATH) != 0) {
ret = filename;
}
CloseHandle(processHandle);
}
#elif defined(__APPLE__)
const int pid = getpid();
char pathbuf[PROC_PIDPATHINFO_MAXSIZE];

Loading…
Cancel
Save