解决:error LNK2001: unresolved external symbol _Netbios@4

转载 2012年08月14日 08:53:03
  (1)对于单文档工程,运行时提示:

       generated debug assertion

       if (!ProcessShellCommand(cmdInfo))

       return FALSE;

       -- File: docsingl.cpp

       Line: 215

原因:缺少AFX_IDS_UNTITLED的字符串

解决:在资源文件的STRING TABLE中加入 ID= AFX_IDS_UNTITLED的键值。

       (2)编辑时提示:

fatal error C1189: #error : Please use the /MD switch for _AFXDLL builds

原因:

解决:在Project->Settings->Preprocessor definitions中去掉 _AFXDLL项。

       (3)编译时提示:

LIBCMTD.lib(dbgheap.obj):error LNK2005: _malloc already defined in msvcrtd.lib(MSVCRTD.dll)

原因:由于VC在编译时试图从两个不同的库中写入同一个函数代码,只要忽略这些相冲突的默认库就可以解决。

解决:在Project->Settings->Link->Category->Input—>Ignore Liberies中加入

相应的msvcprtd.lib,msvcrtd.lib等。

另一种解决:保证自己的编译环境为:

       A)project->settings->c/c++->category->code generation的use run-time library 为debug multithreaded.

       B) 在Project->Settings->Preprocessor definitions中去掉 _AFXDLL项。

       C)如果需要,在资源文件的STRING TABLE中加入 ID= AFX_IDS_UNTITLED的键值。

       D)这样就不需要忽略那些库了。

还有可以:

后来尝试了很多方法,经过摸索,最后得出解决方法:

在Preprocessor中定义_AFXDLL

如果它提示:fatal error C1189: #error : Please use the /MD switch for _AFXDLL builds

就这样改:

C/C++->Code Generation->Multithread DLL (即实现/MD选项)

       (4)编译时提示:

dcmdata.lib(dcuid.obj) : error LNK2001: unresolved external symbol _Netbios@4

原因:缺少所需的链接库文件

解决:在自己的工程中加入需要使用的DCMTK静态库和头文件,并注意顺序。

       (5)编译时提示:

fatal error LNK1181: cannot open input file。。。。。。。 Debug.obj

原因:类似错误,可能是由于目录中含有太长的中文名字。

解决:可以将中文的目录名改为英文就OK

       (6)运行时提示:


原因:

解决:在Project->Settings->Preprocessor definitions中去掉 _AFXDLL项。

       (7)如果将已经make好的dcmtk目录复制到其它目录,则需要重新make,否则会出现一大堆路径错误

四、一个实际的例子

       我们经常使用的DICOM主要是读和写DICOM文件。下面以读写DICOM为例DCMTK的使用方法。

五、其它一些相关的问题

       1、把DCMTK当作静态库使用:DCMTK本身提供的是静态库即Lib,在链接进自己的工程时会将全部的函数加入,因此造成可执行文件很大,而且不便于升级;如果需要使用DCMTK作为动态库链接,需要自己建立相应的Dll工程,然后把原来的程序文件加进来,再写一个导出函数的文件,这些导出函数保持固定。这样其它地方使用的时候不会因为动态库程序升级又重新编译。

http://hi.baidu.com/%D5%D0%B7%E2/blog/item/eaa5e9eda37453252cf53408.html

解决 错误:error LNK2001: unresolved external symbol _auxDIBImageLoadA@4

关于 OpenGL 的一个错误 :error LNK2001: unresolved external symbol _auxDIBImageLoadA@4           个人环境 :V...
  • makenothing
  • makenothing
  • 2012年12月25日 22:06
  • 4547

error LNK2019: 无法解析的外部符号 _GetAdaptersInfo@8,该符号在函数 _wmain 中被引用

像这些无法解析的外部符号的错误时,是由于该符号在的确没有实现;二是实现了但没有被导入外部程序。 像上面的问题,我是引入过头文件的,只是没有引用相应的动态链接库。 程序上面假如#pragma...
  • mkc1989
  • mkc1989
  • 2014年09月01日 21:17
  • 1574

error LNK2001: unresolved external symbol _main解决办法

解决外部符号错误:_main,_WinMain@16,__beginthreadex [+缅? 在创建MFC项目时, 不使用MFC AppWizard向导, 如果没有设置好项目参数, 就会在编译...
  • jiangxinyu
  • jiangxinyu
  • 2007年09月12日 16:53
  • 24983

error LNK2001: unresolved external symbol 链接错误解决办法

出现这个错误网上也有很多现象,比如工程建立的不对,一些库的导出问题,或者某某函数没有实现等等,网上也有很多有效的解决办法。      我也遇到了这个问题:程序是一个多线程程序,Debug版本没有问题...
  • c_tianzi
  • c_tianzi
  • 2013年11月17日 13:17
  • 7169

解决OpenSSL 在VC2015下链接报错的问题。

起因: 公司项目 服务器的nginx是使用的定制版,使用了concat、缩略图生成等模块,为了方便同事们在办公室环境下使用nginx,在Windows下编译nginx,并带上这两个模块。之前在 VC2...
  • bywayboy
  • bywayboy
  • 2015年10月07日 11:05
  • 7988

GPU编程之GLSL(附加一)——常见问题

如果在运行时出现如下问题: 1>ogl3.obj : error LNK2001: 无法解析的外部符号 __imp____glewGetShaderInfoLog 1>ogl3.obj : err...
  • Sun7_She
  • Sun7_She
  • 2014年08月15日 09:58
  • 1274

error LNK2001: unresolved external symbol __endthreadex 解决办法

error LNK2001: unresolved external symbol __endthreadex这个问题,找到的解决办法如下 没有用到beginthreadex endthread...
  • kulala082
  • kulala082
  • 2017年04月06日 18:42
  • 188

error LNK2001: unresolved external symbol __endthreadex 解决办法

今天遇到了 error LNK2001: unresolved external symbol __endthreadex这个问题,找到的解决办法如下 没有用到beginthreadex ...
  • dearwind153
  • dearwind153
  • 2015年12月15日 21:32
  • 2639

libcurl.lib 导入问题 须知

vc2008构建和使用libcurl静态库 http://blog.csdn.net/mos2046/article/details/7697530 1>下载CURL源代码curl...
  • bible521125
  • bible521125
  • 2015年11月17日 17:11
  • 1940

lnk2001 无法解析的外部符号 的几种情况及解决办法

Error LNK2001 无法解析的外部符号 的几种情况及解决办法 .  今天写了一个小程序,然后碰到了“Error LNK2001 无法解析的外部符号”这个问题,一直解决不了,后来上网搜了下,发...
  • bendangth
  • bendangth
  • 2015年08月14日 22:14
  • 5312
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:解决:error LNK2001: unresolved external symbol _Netbios@4
举报原因:
原因补充:

(最多只允许输入30个字)