方法一:隐身加载:extren 函数接口,比如int add(int a,int b);然后在工程属性的连接器,附加依赖项里添加对应的lib库,当然,要确保dll文件和exe文件在同级目录下
方法二:通过预编译指令来加载:#pragma comment(lib,"XXX..lib")
以上都是隐式加载,还有就是现实加载,比较麻烦
方法三:通过LoadLibary()函数来手动加载DLL
HINSTANCE hInst;
hInst = LoadLibary(_T("XXX.DLL"));
然后通过函数指针,并且取得DLL中我们需要的函数的地址:
typedfef int (*ADDPROC)(int a,int b);
ADDPROC Add = (ADDPROC)Get ProcAddress(hInst,"函数名");//这里最好判断下函数指针是否为空
最后,用过函数指针就能使用DLL里的函数了处理上面的方法之外,还有一种就是通过函数序号来加载函数,不过要提前知道函数序号,具体流程就不说了,你可以网上搜下

解决方案 »

  1.   

    LS说的很详细了,方法一和方法二都需要B.dll的导出函数列表lib文件,没有的话你只能动态加载了dll和exe最好(一定要)放在同一个目录下,否则你的程序默认情况下只能在你自己的机器上可用!PS:你的配图看不见
      

  2.   

    运行 dll 项目。
    设置 运行时 app 为 “c:\程序\A.EXE”
      

  3.   

    DLL的位置,只要让调用它的可执行程序能找到就可以了。最简单的方法是和调用它的可执行程序放在一个目录下;还有一个选择就是放在system32下。
      

  4.   

    运行b.dll源代码时,a.exe运行了,但是执行与b.dll相关的步骤时,b.dll源代码中设置了断点,却没有中断,这是怎么回事,
    另外,在a.exe运行前出现一个提示:a.exe does not contain debugging information.Press OK to continue.
    a.exe是由VB6生成的,难道a.exe不支持用来调试其他源代码?
    非常感谢运行b.dll源代码时,a.exe运行了,但是执行与b.dll相关的步骤时,b.dll源代码中设置了断点,却没有中断,这是怎么回事,
    另外,在a.exe运行前出现一个提示:a.exe does not contain debugging information.Press OK to continue.
    a.exe是由VB6生成的,难道a.exe不支持用来调试其他源代码?
      

  5.   


    非常感谢运行b.dll源代码时,a.exe运行了,但是执行与b.dll相关的步骤时,b.dll源代码中设置了断点,却没有中断,这是怎么回事,
    另外,在a.exe运行前出现一个提示:a.exe does not contain debugging information.Press OK to continue.
    a.exe是由VB6生成的,难道a.exe不支持用来调试其他源代码?
      

  6.   

    非常感谢运行b.dll源代码时,a.exe运行了,但是执行与b.dll相关的步骤时,b.dll源代码中设置了断点,却没有中断,这是怎么回事,
    另外,在a.exe运行前出现一个提示:a.exe does not contain debugging information.Press OK to continue.
    a.exe是由VB6生成的,难道a.exe不支持用来调试其他源代码?
      

  7.   

    “a.exe does not contain debugging information.Press OK to continue.”
    说明 a。exe是 release 版本。 没 调试 信息。问题是 a.exe 没有 用到 调试版本的 dll, 所以 dll 断点 无效。1 。exe 使用 调试 版本
    2。让 exe 使用 调试版本 dll  
      

  8.   


    非常感谢运行b.dll源代码时,a.exe运行了,但是执行与b.dll相关的步骤时,b.dll源代码中设置了断点,却没有中断,这是怎么回事,
    另外,在a.exe运行前出现一个提示:a.exe does not contain debugging information.Press OK to continue.
    a.exe是由VB6生成的,难道a.exe不支持用来调试其他源代码?你不是有dll的源码嘛,将其添加到exe项工程当中,dll作为一个项目存在,这样调试就easy多了
      

  9.   


    非常感谢运行b.dll源代码时,a.exe运行了,但是执行与b.dll相关的步骤时,b.dll源代码中设置了断点,却没有中断,这是怎么回事,
    另外,在a.exe运行前出现一个提示:a.exe does not contain debugging information.Press OK to continue.
    a.exe是由VB6生成的,难道a.exe不支持用来调试其他源代码?
    DLL加断点调试和普通的源码调试不大一样,你自己查下怎么调试DLL吧