我有一个主程序,1个wool.dll的动态连接库,1个调用dll的exe文件
dll的调用函数是gtewood
为了不想被人盗用dll,我想把dll在内存中释放,dll是200多KB
dll没有源码,调用dll的那个exe也没有源码
如果让这2个文件在内存中释放?

解决方案 »

  1.   

    可以用 dlltools 里面的 dll2pas 将 DL L转为 pas,添加所需单元,然后编译,正常调用即可。
      

  2.   


    帆哥,请教如何将一个别人的DLL转换成PAS,自己调用?什么工具?
      

  3.   

    我已经转换成.pas了,可是怎么调用啊?
    我的调用函数是getwool
    并且我以前调用是用LordPE添加的wool.exe
    而这个wool.exe是没有源码的,是我delphi程序释放的文件结构图:
    ——————————————
     Gamelogin.exe           //打开会释放以下文件
    ——————————————
          wool.exe           //调用dll的程序
    ——————————————
          wool.dll
    ——————————————帮我写下调用代码,感激不尽
      

  4.   

    好象只能生成文件 .dll .exe 后才能调用哦。
    可以先生成到系统的temp 目录中去,关闭后,马上删除
      

  5.   

    我用dll2pas转换的pas文件错误,没办法编译构建
      [错误] werl.pas(7): Undeclared identifier: 'dllSize'
      [错误] werl.pas(8337): Number of elements differs from declaration
      [致命错误] GameLogin.dpr(14): Could not compile used unit 'werl.pas'INTERFACE
    USES Classes,DLLLoader;
    VAR werlDLL:TDLLLoader;
    IMPLEMENTATION
    CONST werlSize=166589;
    werlData:ARRAY[1..werl.dllSize] OF BYTE=($4D,$5A,$90,$00,$03,$00,$00,$00求助,我生成的为什么不能编译
      

  6.   

    我已经解决了以上报错问题可是编译后还是不知道怎么调用这个dll,一启动就提示未找到wool.dll这个应该怎么调用
      

  7.   

    DLL其实就一些“共享代码”的集合而已
    使用时,加载DLL
    使用完后,释放DLL
      

  8.   

    不用说,你肯定没有声明函数就直接调用,这个和直接调用不同,还得声明函数变量。抽空写了个很简单的例子给你看看
    http://www.kuaipan.cn/file/id_6813329959947382.html但是有一点需要记住,并不是所有DLL都能通过这样做,因为有些DLL需要查找外部的依赖库,这个就没办法了。
      

  9.   

    楼主还是在网络上整理整理吧,DLL有一些相关资料的
    不动手是不能学到知识的哟