我使用的开发环境是vs 2008,我现在准备向一个工程中加入一个lib文件,供程序使用。我试了以下的方法,全都不成功:1  右击“工程”-》“属性”-》“链接器”-》“输入”,然后输入我的lib文件,编译不通过2  #pragma comment(lib,"my.lib"),同时将lib文件拷贝到相应目录下,编译不通过这是为什么啊?

解决方案 »

  1.   

    编译不通过,报错如下:
    error LNK2019:无法解析的外部符号 “int _cdecl MSG_ClientInit(void)" (?MSG_ClientInit@@YAHXZ),该符号........
      

  2.   

    1  右击“工程”-》“属性”-》“链接器”-》“输入”,然后输入我的lib文件,编译不通过 
    这一步的时候,lib在哪儿啊?
      

  3.   

    我将lib和相应的DLL拷贝到了跟工程源代码相同的目录下,并且我也包含了相应头文件,可还是不行啊!急死人噢
      

  4.   


    是不是lib文件没有放好,应该放在vc能搜索的目录去,你把lib文件放到sln那个解决方案的目录去看看。
      

  5.   

    错误是没有函数实现,那应该是lib的位置没有放好
      

  6.   

    从错误本身看,是没有找到lib
      

  7.   

    dll导出的函数名是否与MSG_ClientInit相同?
      

  8.   

    把你的.lib文件所在文件夹设为环境变量。
    或者用#pragma comment(lib,"绝对路径")
    肯定能通过!
      

  9.   

    库链接配置那里, 列出的文件, 如果找不到, 会首先报错, 不等链接就报.楼主既然通过了编译阶段, 头文件自然是找到了,没有报告库文件不存在, 导入库也找到了.那个错误表示在导入库(或静态库)中没有找到 MSG_ClientInit 的符号地址信息.
    是不是没有导出呢?
      

  10.   

    函数有没加extern "C"
    可能是名字改编的问题.