同一个Solution下有一个project A,build 出 DLL,供给project TestA 调用,这样为了调试过程中可以一边调试一边改A中代码,不用拷贝DLL 到TestA中,
需要几点设置:
1、常规需要将TestA 右键-》set as StartUp,设置成启动项。
2、把编译需要的头文件所在目录包含进来
TestA properies-》C++-》general-》additional include directories-》输入生成Dll文件头文件所在目录。(当然也可以把所有头文件放在一个include文件夹下,当然这需要将Dll工程对应上,这里就在目录下放着,就之际给个绝对路径了)。见下两图
3、设置LIB和Dll调用路径
properies->link->general->additional Libary Directories 添加Dll所在目录。见下两图
4、添加设置依赖lib
properities-》link->input->Additional Dependencies 添加lib名
以上设置ok,可以build dll,然后调用程序直接运行并调用生成的dll。
(还有一种方式可以省去设置lib,dll的路径和依赖等,需要将ProjectTestA 设置成依赖A,就可以省去上述3及一下的步骤。)
如果以上还是不能解决问题,找不到Dll,那么就需要将projectA的DLL copy到调用项目上。
请再Project A中cofiguration properies->custom build step->commd line 中写入命令行,copy $(TargetPath) ..\Debug\$(TargetFileName)
见下图
将project A中targetpath中DCL.dll copy到它的上一级(TestDLL项目中)Dubug下,名字依然为DLC.dll