将dll打包入exe

时间:2011-12-10 06:46:10
【文件属性】:
文件名称:将dll打包入exe
文件大小:31KB
文件格式:TXT
更新时间:2011-12-10 06:46:10
将dll打包入exe Win32 EXE 在调用一个外部 DLL 中的函数时,首先要调用 LoadLibary 函数来载入此 DLL 到程序的进程地址空间。 如果 LoadLibary 载入此 DLL 成功,将返回一个该 DLL 的句柄。 这个句柄实际上就是该 DLL 在内存中的起始地址。 在载入 DLL 成功后,还必须调用 GetProcAddress 函数来获取要调用的函数的地址。然后再根据该地址来调用这个函数。 根据上述原理,我们可以把一个 DLL 作为资源文件放到 EXE 文件中,在程序运行时,分配一块内存,然后将此资源复制到该分配的内存中,并根据该内存地址计算得到相关的导出函数地址,然后,当我们需要调用某一函数时,可以用该函数在内存中的地址来调用它。 程序实现。

网友评论

  • 比较简单,但是够用了
  • 这东西我是用了无效,不知道其他人怎么样
  • 如果仅仅靠这个代码是不能弄成功的,不过楼主里面的代码有很多值得借鉴之处。
  • 可用,只是代码质量不理想。
  • 自己修改成功了,不过代码好像是在网上copy下来模仿的。 不过鉴于楼主分享精神。谢谢
  • 有些程序失效。,希望楼主更新一个版本
  • 有些程序失效。
  • 好像不能用哦,可能是我没有弄对吧。
  • 编译之后为什么有些程序可以,有些程序失效。 自己改也没改成功,希望楼主更新一个版本
  • 这个好象不能用啊,没有试验成功。建于分享的精神。
  • 还以为是可执行程序了呢,楼主分享的是源代码。。。 当然,能把最终的成果就是可执行程序共享了更好