使用Visual Studio(VS)创建空项目的Win32桌面应用程序【main函数入口变WinMain】

前言

在Visual Studio中直接新建Windows桌面应用程序会有很多多余的代码生成,本文将提供从空项目创建Win32项目的方法,解决新建空项目直接使用WinMain代码编译报错的问题

例如:LNK2019 :无法解析的外部符号

参考博客:

VS创建空的Win32程序 - fenggwsx - 博客园 (cnblogs.com)

步骤一:创建空项目

使用VS创建一个空项目

如图所示,默认创建的是控制台项目

步骤二:修改项目属性

新建项目后,右键点击项目名称,找到"属性"

打开属性配置页

在上方按需选择需要的配置,没有特殊需求可以选择所有配置

如图所示,选择配置属性->链接器->系统->子系统

将控制台改成窗口选项

步骤三:创建入口函数

新建源文件,例如main.cpp

在源文件添加如下代码

cpp 复制代码
#include <Windows.h>

int WINAPI wWinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, PWSTR pCmdLine, int nCmdShow)
{
	return (int) msg.wParam;
}

编译,完成!

相关推荐
VIP_CQCRE3 小时前
在 Visual Studio 里接入 Ace Data Cloud:让 IDE 拥有 OpenAI 兼容 AI 能力
openai·ai编程·开发工具·visual studio·ace data cloud
我是Superman丶4 小时前
Arduino IDE 安装教程:Windows/macOS/Linux 开发环境搭建
ide·windows·macos
辻弋2015 小时前
自动检测硬件生成驱动清单、实时监控FPS、120秒性能记录——30+项优化模块化开关,所有改动可精确复原
服务器·windows·游戏引擎·电脑·开源软件
江湖人称菠萝包5 小时前
【Windows】《深入浅出Windows API程序设计:编程基础篇》笔记-Chapter8-子窗口控件
windows·笔记
其实防守也摸鱼7 小时前
OpenClaw Windows 踩坑实战指南
运维·服务器·数据库·windows·github·copilot
佳&弥12 小时前
后渗透痕迹清理
服务器·windows·web安全·网络安全
VIP_CQCRE12 小时前
在 Visual Studio 里接入 Ace Data Cloud:让 LMLocal 调用统一的 OpenAI 兼容模型接口
ai·大模型·visual studio·ace data cloud·lmlocal
MSTcheng.12 小时前
【Linux学习】Linux学习第四弹——Linux基本指令3
linux·windows·学习·操作系统·指令
霸道流氓气质13 小时前
MyBatis 与 SQL 层面关键技术详解
windows·sql·mybatis
一直走下去-明13 小时前
在 Windows 上安装 uv
windows·uv