我正在尝试使用"GetProcessImageFileName"获取远程进程的名称。然而,GCC(MinGW)链接器出现以下错误:
<source_file>.c: In function '<function_name>':
warning: implicit declaration of function 'GetProcessImageFileName' [-Wimplicit-function-declaration]
GetProcessImageFileName(hProcess, szProcessName, MAX_PATH);
^
undefined reference to `GetProcessImageFileName'
collect2.exe: error: ld returned 1 exit status
我尝试使用“-lPsapi”和“-lKernel32”进行编译,但结果相同。“GetProcessImageFileName”在“Psapi.h”中声明。
我在Windows 7 Professional 64位机器上使用GCC 4.8.1。有什么想法吗?
UNICODE
,并且szProcessName
的类型是什么?我猜测是“是”,并且是char*
或std::string
。如果有源代码就更好了。 - icabodGetProcessImageFileName
未被声明。因此,您需要包含正确的头文件。如果该函数不在头文件中,则可能需要更高版本的mingw,或者需要更新mingw本身。 - arxGetProcessImageFileName()
。如果 XerZetZip 正在使用它,他需要切换到 mingw-w64。令人遗憾的是,今天我们仍然存在这样的问题,即人们使用错误的 MinGW... - andlabschar
数组。 - XerZetZippsapi.h
以及-lpsapi
和-lKernel32
。我尝试着让MinGW保持最新状态,但是似乎没有新的发展。我还尝试获取MinGW-w64,但是遇到了很多问题导致无法正常工作。 - XerZetZip