如果您无法下载资料,请参考说明:
1、部分资料下载需要金币,请确保您的账户上有足够的金币
2、已购买过的文档,再次下载不重复扣费
3、资料包下载后请先用软件解压,在使用对应软件打开
编程技巧:vc下把.exe转成dll文件【文章标题】:编程技巧:vc下把.exe转成dll文件【文章作者】:vbcs【作者邮箱】:baoliangster@gmail.com【作者主页】:http://hi.baidu.com/vbcs003【下载地址】:http://hi.baidu.com/vbcs003【作者声明】:只是感兴趣,没有其他目的。失误之处敬请诸位大侠赐教!--------------------------------------------------------------------------------【详细过程】VC下把EXE程序改称DLL文件.dsp工程文件,文本格式,不可丢失或损坏.dsw工作区文件,丢失或损坏时,可点击.dsp文件打开工程,.dsw文件自动重建.clwClassWizard信息文件,ini格式,ClassWizard出问题时可删除它再重建.map映像信息文件,编制DLL写.def文件时,若不知道函数导出顺序,可在Prject\Settings\Link页中选中"Generatemapfile",重新build,用记事本或其它类似程序打开生成的.map文件,里面可看到函数导出表.i在命令行环境下输入:cl***.cpp/P(注意后面的参数P大小写敏感),程序文件夹中会生成.i文件,用记事本或其它类似程序打开,可看到.cpp文件经预处理后的结果.ncb无编译浏览文件,当自动完成功能(自动显示成员变量列表)出问题时,可删除它,build后自动重建。其它:.aps资源辅助文件,二进制格式.opt开发环境参数(如工具条位置)文件.plg编译信息(如error和warning信息)文件,html格式.pch预编译文件,可加快编译速度,但改文件非常大.pdb记录程序相关的数据和调试信息.expdll信息文件,编译dll时才会生成.bsc用于浏览项目信息,可在Prject\Settings\Link页中勾掉"GenerateBrowseInfoFile",禁止生成.bsc文件,以加快编译速度。但若使用SourceBrowser的话就必须有这个文件说到这里其它今天对我们有用的也就是*.dsp文件,它里面存放的是工程的一些配置信息。所以为了实现今天我们今天的目的,我们就要来改变*.dsp里面的配置信息,这样就可以把一个.exe文件转换成我们需要的dll文件。好了,下面我们就开始动手吧:1>我们创建三个VC工程。命名分别为:DemoDll(Dialog类生成的.exe,用来把它转换成我们想要的DLL文件),DLL(默认的MFCDLL),CallDall(Dialog类用来调用我们转换成的Dll文件)2>分别打开DemoDll.dspDll.dsp文件其中两个文件的具体内容我就不再这里列出来了,只是把不同点给大家列一下。(上面得是DLL文件(红色),下面得是EXE文件(蓝色))(1)#TARGTYPE"Win32(x86)Dynamic-LinkLibrary"0x0102#TARGTYPE"Win32(x86)Application"0x0101(2)!MESSAGE"DemoDll-Win32Release"(basedon"Win32(x86)Dynamic-LinkLibrary")!MESSAGE"exe-Win32Release"(basedon"Win32(x86)Application")(3)!MESSAGE"DemoDll-Win32Debug"(basedon"Win32(x86)Dynamic-LinkLibrary")!MESSAGE"exe-Win32Debug"(basedon"Win32(x86)Application")(4)#ADDBASECPP/nologo/MD/W3/GX/O2/D"WIN32"/D"NDEBUG"/D"_WINDOWS"/D"_WINDLL"/D"_AFXDLL"/Yu"stdafx.h"/FD/c#ADDBASECPP/nologo/MD/W3/GX/O2/D"WIN32"/D"NDEBUG"/D"_WINDOWS"/D"_AFXDLL"/Yu"stdafx.h"/FD/c(5)#ADDCPP/nologo/MD/W3/GX/O2/D"WIN32"/D"NDEBUG"/D"_WINDOWS"/D"_WINDLL"/D"_AFXDLL"/D"_MBCS"/D"_USRDLL"/Yu"stdafx.h"/FD/c#ADDCPP/nologo/MD/W3/GX/O2/D"WIN32"/D"NDEBUG"/D"_WINDOWS"/D"_A