Mik*_*ail 1 c++ windows winapi visual-studio
我需要手动设置线程的优先级,我使用GetProcessIdOfThread. 不幸的是,第 3 方库要求我构建代码,Use MFC in a Shared DLL以便我可以afx.h用于某些 dll 技巧。
如何使用类似GetProcessIdOfThreadwithout 的功能windows.h?
我试图包括,WinBase.h但这会抛出很多废话,编译错误。
如果您的下游链接器设置正确,您可以简单地将函数声明添加到您选择的项目头文件中。
这是 中的原始声明WinBase.h:
WINBASEAPI DWORD WINAPI GetProcessIdOfThread(HANDLE Thread);
Run Code Online (Sandbox Code Playgroud)
如果您不包括Windows.h,那么您将不会拥有该特定声明所需的大部分使用的预处理器宏/定义。如果您要链接 CRT 的静态库版本,则这是等效的定义:
unsigned long __stdcall GetProcessIdOfThread(void *Thread);
Run Code Online (Sandbox Code Playgroud)
如果要链接 CRT 的 DLL 版本,则需要在声明前加上__declspec(dllimport):
__declspec(dllimport) unsigned long __stdcall GetProcessIdOfThread(void *Thread);
Run Code Online (Sandbox Code Playgroud)