无法在 CLR C++ 项目中使用 FindWindowA

问题描述

我不能在 clr 项目中使用 FindWindowA,因为它给了我一堆错误,这是我的代码

我正在尝试为游戏制作培训师。

当你左键点击按钮时,它会找到窗口

private: System::Void button1_Click(System::Object^ sender,System::EventArgs^ e) {



    HWND hwnd = FindWindowA(NULL,"Random process");

}

但是,当我运行它时,我得到 2 个未解析的外部符号,这些是错误

Severity    Code    Description Project File    Line    Suppression State
Error   LNK2019 unresolved external symbol "extern "C" struct HWND__ * __stdcall 
FindWindowA(char const *,char const *)" (?FindWindowA@@$$J18YGPAUHWND__@@PBD0@Z) referenced in 
function "private: void __clrcall Project1::MyForm::button1_Click(class System::Object ^,class 
System::EventArgs ^)" (? 
button1_Click@MyForm@Project1@@$$FA$AAMXP$AAVObject@System@@P$AAVEventArgs@4@@Z)    Project1     
C:\Users\user\source\repos\Project1\Project1\MyForm.obj 1   

Severity    Code    Description Project File    Line    Suppression State
Error   LNK2028 unresolved token (0A000273) "extern "C" struct HWND__ * __stdcall 
FindWindowA(char const *,class 
System::EventArgs ^)" (? 
button1_Click@MyForm@Project1@@$$FA$AAMXP$AAVObject@System@@P$AAVEventArgs@4@@Z)    Project1     
C:\Users\user\source\repos\Project1\Project1\MyForm.obj 1   

解决方法

我通过将 userlib32 添加到链接器选项卡中的附加依赖项来解决此问题,非常感谢大家帮助理解问题

如果您需要解决此问题,请转到您的项目属性 Linker->Input->Additional Dependencies->Edit 然后添加 userlib32