关于dll文件自身提取和调用之间的冲突问题(不要只看到10分,那是我怕没人来解决这个问题)。 (10分)

憔悴

Unregistered / Unconfirmed
GUEST, unregistred user!
实际酬报:100分。<br>我写了一个程序,包含一个钩子文件(dll),并以文件流的方法写入自身。我希望的是<br>在运行时检测有无此dll,若没有,提出它,退出程序并再次运行(可以防止缺少文件的<br>错误)<br>在程序中调用此dll的语句是function EndHook:bool; external 'kkk.dll'<br>但是在启动程序的时候程序告诉我没有找到kkk.dll而终止程序。<br>如何解决这个问题?有趣的是经upx压缩后程序在2000下能运行其中的一部分(就是说好象少了<br>程序启动时检测有无kkk.dll的一部分,当调用到endhook这个函数的时候才开始出错)。<br>是不是用LoadLibrary可以解决这个问题?具体怎么调用呢?因为我写的dll不是很规范。<br>不知那位高人可以给我一个解释和解决的办法?先谢谢了。
 
show the code!
 
用LoadLibrary来动态加载你的kkk.dll,然后用GetProcAddress找到函数的地址并调用<br>这样是不能用function EndHook:bool; external 'kkk.dll'这种方式来声明的<br>如果不明白你可以看看Delphi自带的PsApi.pas里是怎么做的,它也是动态调入一个DLL。
 
to xianjun:<br>&nbsp;我提出这个问题的时候就知道呢说的这个了,我只是想知道为什么win2000有这种情况<br>出现,唉,不管了。给分了。不过没有那100分。
 
顶部