无法解析的外部符号 [email protected],该符号在函数 ___tmainCRTStartup 中被引用

一,问题描述
MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 [email protected],该符号在函数 ___tmainCRTStartup 中被引用 
Debug\jk.exe : fatal error LNK1120: 1 个无法解析的外部命令

error LNK2001: unresolved external symbol [email protected]
在自己创建新工程的时候经常在开始选择win32控制台程序还是win32程序的时候一不小心弄错了,后面是相应的解决方法。

二,原因及解决办法
产生这个问题的真正原因是C语言运行时找不到适当的程序入口函数,

一般情况下,如果是windows程序,那么WinMain是入口函数,在VS2008中新建项目为“win32项目”

1、如果是dos控制台程序,那么main是入口函数,在VS2008中新建项目为“win32控制台应用程序”

2、如果入口函数指定不当,很显然c语言运行时找不到配合函数,它就会报告错误。

修改设置适应你的需求:

如果是windows程序:

1.菜单中选择 Project->Properties, 弹出Property Pages窗口

2.在左边栏中依次选择:Configuration Properties->C/C++->Preprocessor,然后在右边栏的Preprocessor Definitions对应的项中删除_CONSOLE, 添加_WINDOWS.

3.在左边栏中依次选择:Configuration Properties->Linker->System,然后在右边栏的SubSystem对应的项改为Windows(/SUBSYSTEM:WINDOWS)

如果是控制台程序:

1.菜单中选择 Project->Properties, 弹出Property Pages窗口,

2.在左边栏中依次选择:Configuration Properties->C/C++->Preprocessor,然后在右边栏的Preprocessor Definitions对应的项中删除_WINDOWS, 添加_CONSOLE,

3.在左边栏中依次选择:Configuration Properties->Linker->System,然后在右边栏的SubSystem对应的项改为CONSOLE(/SUBSYSTEM:CONSOLE)。

即:项目——> 项目属性——> 配置属性——> 链接器——> 系统——> 子系统,这里选择控制台(SUBSYSTEM:CONSOLE)  则表示此项目是WIN32控制台程序。而选择Windows (/SUBSYSTEM:WINDOWS) 则表示为 WIN32项目。

时间: 2025-01-02 11:06:39

无法解析的外部符号 [email protected],该符号在函数 ___tmainCRTStartup 中被引用的相关文章

[转]无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用

刚学WinAPI编译遇到不少问题,LNK2019: 无法解析的外部符号 _main,该符号在函数 ___tmainCRTStartup 中被引用 MSVCRTD.lib test. 这个问题表明你新建的是一个main类型函数(控制台程序),而你的程序中有窗口程序,显然是个win32函数,解决方法:项目-属性-链接器-系统-子系统-把控制台该为windows. 以下基本的情况说明: 一,问题描述error LNK2001: unresolved external symbol [email pro

无法解析的外部符号 _ ,该符号在函数 " __main中被引用 && This function or variable may be unsafe.

加上winsock2的运行库看看吧,一般不用加的啊 #pragma comment(lib,"Ws2_32.lib") 应该就没有问题了吧^_^ 以下为转载 http://blog.chinaunix.net/uid-20672257-id-2955771.html 1.将过去的工程用VS2010打开的时候.你有可能会遇到一大堆的警告:warning C4996. 比如:warning C4996: 'sprintf': This function or variable may be

错误 1 error LNK2019: 无法解析的外部符号 __imp__pthread_create,该符号在函数 _main 中被引用 解决方法

晚上花几分钟在windows下测了下pthread的用法,出现错误 1 error LNK2019: 无法解析的外部符号 __imp__pthread_create,该符号在函数 _main 中被引用 经网上搜,反正都没解决,其中一个说引入#pragma comment(lib, "pthreadVC2.lib")后解决,但笔者遇到的不是这个原因,而是版本问题.可参考http://www.cnblogs.com/zhjh256/p/6364777.html解决.

error LNK2019: 无法解析的外部符号 __imp_GetUserObjectInformationW,该符号在函数 OPENSSL_isservice 中被引用

错误 18 error LNK2019: 无法解析的外部符号 __imp_GetUserObjectInformationW,该符号在函数 OPENSSL_isservice 中被引用 E:\FileRecv\SimpleAuthenticator(1)\SimpleAuthenticator\SimpleAuthenticator\libeay64.lib(cryptlib.obj) SimpleAuthenticator 错误 19 error LNK2019: 无法解析的外部符号 __im

error LNK2019: 无法解析的外部符号 _acosh,该符号在函数 _acoshFunc 中被引用

编译sqlite3 win32版本时候,遇到如下问题 2>sqlite3secure.obj : error LNK2019: 无法解析的外部符号 _acosh,该符号在函数 _acoshFunc 中被引用2>sqlite3secure.obj : error LNK2019: 无法解析的外部符号 _asinh,该符号在函数 _asinhFunc 中被引用2>sqlite3secure.obj : error LNK2019: 无法解析的外部符号 _atanh,该符号在函数 _atanh

qtmaind.lib(qtmain_win.obj) : error LNK2019: 无法解析的外部符号 __imp_CommandLineToArgvW,该符号在函数 WinMain 中被引用

报错:qtmaind.lib(qtmain_win.obj) : error LNK2019: 无法解析的外部符号 __imp_CommandLineToArgvW,该符号在函数 WinMain 中被引用 原因: 未包含Shell32.lib 解决1: #pragma comment(lib, "Shell32.lib") 解决2: 属性管理器:链接器->输入->附加依赖项->Shell32.lib (在常规中添加好对应附加库目录) 参考:https://blog.c

error LNK2019: 无法解析的外部符号 [email protected],该符号在函数 ___tmainCRTStartup 中被引用

产生这个问题的真正原因是C语言运行时找不到适当的程序入口函数,一般情况下,如果是windows程序,那么WinMain是入口函数,在VS2008中新建项目为"win32项目",如果是dos控制台程序,那么main是入口函数,在VS2008中新建项目为"win32控制台应用程序", 而如果入口函数指定不当,很显然c语言运行时找不到配合函数,它就会报告错误,需要修改设置以适应你的需求. windows程序: 1.菜单中选择 Project->Properties,

VS2015+OpenGL4.0开发编译时弹出错误:glaux.lib(tk.obj) : error LNK2019: 无法解析的外部符号 _sscanf,该符号在函数 [email protected] 中被引用

一.问题描述: VS2015+OpenGL4.0开发编译时弹出如下所示的错误: 1>glaux.lib(tk.obj) : error LNK2019: 无法解析的外部符号 _sscanf,该符号在函数 [email protected] 中被引用 1>glaux.lib(tk.obj) : error LNK2019: 无法解析的外部符号 _vsprintf,该符号在函数 _PrintMessage 中被引用 二.问题原因: VS2015默认编译时将许多标准库采用内联方式处理,因而没有可以链

error LNK2019: 无法解析的外部符号 [email protected],该符号在函数 ___tmainCR...(转)

一,问题描述 MSVCRTD.lib(crtexew.obj) : error LNK2019: 无法解析的外部符号 [email protected],该符号在函数 ___tmainCRTStartup 中被引用  Debug\jk.exe : fatal error LNK1120: 1 个无法解析的外部命令 error LNK2001: unresolved external symbol [email protected] debug/main.exe:fatal error LNK 1