用向导创建一个simple的DLL工程加入一个函数int InilData
加入一和工程名一样的头文件和DEF文件。编译通过
然后创建一个任意工程,把头文件和.lib文件加入到这个工程中去
调用函数时出错如下:
error LNK2001: unresolved external symbol "int __cdecl InilData(void)" (?InilData@@YAHXZ)
为什么?如何解决?

解决方案 »

  1.   

    是不是不要加头文件和DEF文件导出函数?还是有什么别的办法?大家帮忙
      

  2.   

    必须在调用工程中的Settings..->Link->Object/library modules中添加lib名称
      

  3.   

    楼主看看这个例子http://www.vckbase.com/document/viewdoc.asp?id=543
      

  4.   

    另外,我也正在学习写DLL,有空交流啊QQ:10304429
      

  5.   

    to :allenpony(allenpony) 
    我的意是:不用loadlibray 等函数加载DLL
    不是说有种方法可以加LIB文件后直接用DLL中的函数吗?
      

  6.   

    to  wyz_csdn(网语者) 
    我在式程中按你说的加入LIB文件后,编译提示如下:
    cannot open input file "test.obj"
      

  7.   

    隐式调用?那你看这个吧http://www.vccode.com/file_show.php?id=1817
    另,谁知道怎么在自己的DLL中包括ACTIVEX控件?
      

  8.   

    dll中要导出的函数这样申明:
    #define DllExport _declspec(dllexport)
    extern "C" DllExport int _stdcall Test(int n)
    {
    ......
    }
      

  9.   

    对,要用隐式连接可是还是有错误:
    cannot open input file "test.obj"
    如何解决?