在Visual Studio中直接新建Windows桌面应用程序会有很多多余的代码生成,本文将提供从空项目创建Win32项目的方法,解决新建空项目直接使用WinMain代码编译报错的问题
例如:LNK2019 :无法解析的外部符号
参考博客:
VS创建空的Win32程序 - fenggwsx - 博客园 (cnblogs.com)
使用VS创建一个空项目
如图所示,默认创建的是控制台项目
新建项目后,右键点击项目名称,找到“属性”
打开属性配置页
在上方按需选择需要的配置,没有特殊需求可以选择所有配置
如图所示,选择配置属性->链接器->系统->子系统
将控制台改成窗口选项
步骤三:创建入口函数
新建源文件,例如main.cpp
在源文件添加如下代码
#include <Windows.h>
int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PWSTR pCmdLine, int nCmdShow)
{
// 消息处理 不需要可以直接 return 0
MSG msg = {};
while (GetMessageW(&msg, nullptr, 0, 0))
{
TranslateMessage(&msg);
DispatchMessageW(&msg);
}
return (int) msg.wParam;
}
编译,完成!