C++ 错误LNK2019:未解析的外部符号_wWinMain@16在函数\uuuu\tMainCartStartup中引用

C++ 错误LNK2019:未解析的外部符号_wWinMain@16在函数\uuuu\tMainCartStartup中引用,c++,visual-studio-2012,directx,directx-11,C++,Visual Studio 2012,Directx,Directx 11,我从DirectX 11开始,发现以下编译错误: 错误1错误LNK2019:未解析的外部符号wWinMain@16在函数\uuu tmainCRTStartup中引用 错误2错误LNK1120:1未解析的外部(我认为这个错误是因为这个错误上面的错误) 我已经搜索了很长一段时间来解决这个问题,但我无法在这个网站或通过谷歌的任何其他网站上找到任何解决这个问题的方法 我正在使用VisualStudio 2012和C++来完成这个项目。为了制作测试项目,我通过newproject->visualc++-

我从DirectX 11开始,发现以下编译错误:

错误1错误LNK2019:未解析的外部符号wWinMain@16在函数\uuu tmainCRTStartup中引用

错误2错误LNK1120:1未解析的外部(我认为这个错误是因为这个错误上面的错误)

我已经搜索了很长一段时间来解决这个问题,但我无法在这个网站或通过谷歌的任何其他网站上找到任何解决这个问题的方法

我正在使用VisualStudio 2012和C++来完成这个项目。为了制作测试项目,我通过newproject->visualc++->emptyproject创建了一个空项目。 我正在为这个项目使用标准编译器

这是我的main.cpp文件中的wWinMain头文件:

int-wWinMain(HINSTANCE-HINSTANCE,HINSTANCE-prevInstance,
             LPWSTR cmdLine,int cmdShow)

IntelliSense还在文件开头的一些include行上不断抛出“4 IntelliSense:”#“此处不应出现”错误,这些行:(编辑:错误不断消失并重复出现)

#包括
#包括
#包括“BlankDemo.h”
#包括
我把它放在我的帖子里,因为我认为这可能是由错误造成的,或者与错误有关,它可能只是包含文件。h是测试演示的头文件,它只生成一个空白的DirectX 11窗口

我使用的所有代码都来自DirectX上的一本书;由于我还不习惯DirectX,我尝试了许多修复程序,但似乎没有一个能够消除此错误,修复程序如下:

转到属性->配置属性->常规->字符集,并将其更改为“使用Unicode字符集”

更改字符集后,错误仍然存在

转到属性->链接器->系统并将子系统更改为Windows(/SubSystem:Windows)

我还尝试将其更改为Console(/SUBSYSTEM:Console),这两个更改似乎都不能解决问题

我还转到了属性->链接器->命令行,并在“附加选项”中添加了/ENTRY:“wwinmincartstartup”,这也不能解决问题

我仍然保留了对项目的更改,如上所述。我只输入了几行代码,因为错误似乎与我在本文中输入的代码有关,而且当我复制和粘贴代码时,它的格式似乎不正确,但是如果您需要查看更多代码,请告诉我

编辑:我已将函数更改为
int-WINAPI\uu stdcall-wWinMain(HINSTANCE-HINSTANCE,HINSTANCE-prevInstance,
            LPWSTR cmdLine,int cmdShow)

即使在函数名中使用
\uu stdcall
WINAPI
,似乎也不起作用。至少,以我使用它们的方式,请告诉我这是否是错误的

对不起,伙计们,好像我在这里犯了错误,就像在;在属性->配置属性->常规->字符集下,我没有使用Unicode开始。似乎通过使用多字节字符集开始,这让Visual Studio 2012感到困惑,以为我是在使用多字节字符集。这导致它抛出错误,即使Properties->Linker->Advanced下的入口点设置为WWInMinCartStartup。有道理,因为字符没有正确识别。

符号
winMain
通常是项目控制台与窗口配置的一种症状。另外,
w
前缀通常表示字符编码配置问题:
w
表示宽字符集。感谢您的提示,“w”表示宽字符集是有意义的,但这并不能帮助我解决问题。您的代码中多次出现unicode符号U+2028,这就是它无法正确格式化的原因。这是有意的吗?(我不知道这是否与错误有关。其他人可能会对此进行清理。)其中一些人在include行中的
#
前面。这也许可以解释错误信息?(
#
应该始终是行的第一个字符。)抱歉,“#”是我代码中包含行的第一个字符,IntelliSense可能正在播放我听到的内容,但我不知道。现在,我已经编辑了我的帖子,以便正确显示包含行。此外,我还必须等待7个小时才能接受此答案,请告诉我,如果你有任何其他的答案在同一时间。我只是重新制作了几次,直到我得到它的工作,最后。
#include <Windows.h>
#include <memory>
#include "BlankDemo.h"
#include <tchar.h>