能否在生成dll时指定该dll只能被唯一的exe文件调用? 能否在生成dll时指定该dll只能被唯一的exe文件调用,如果可以的话,能否通过pe exploerer修改该dll,使其能被我希望的exe文件调用?ps:如果pe exploerer能修改,请高手稍微详细讲一下操作过程。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 生成dll时指定该dll只能被唯一的exe文件调用, 那还做dll干什么呢。 谢谢回复。明白你的意思。但是,我这边的现象是这样的:在开源的代码上做了改动。如果改变了编译后的可执行文件名称,发现程序运行时,弹出对话框,提示不能加载某个dll,而其他dll却可以正常加载。是否可执行文件名称能够决定dll是否被加载?dll的路径位置都没有变,exe一共要加载4个dll。把exe改名后,其他的3个都能正常加载,就只有一个有问题,提示加载失败。如果问题不在dll身上,是在exe文件上?有这种可能不? 估计是在DllMain中用GetModuleFileName API检查了.EXE主进程的文件名吧 用dumpbin 查看了这个dll,发现用了GetModuleFileNameA这个函数。但是其他的可加载dll,也有用到这个函数。麻烦再给指点指点。 是不是应该给dll改个名字,既然你都把人家的内容改了,免得影响其它程序 你给exe做一个hash值, 运行的时候,算一下这个程序的hash值就可以了.至于 hash算法,可以是 md5或者sha 提示不能加载某个dll,问题通常是出在exe文件上。很可能dll的文件名与exe的文件名有某种关联(如仅扩展名不同等)。exe加载dll时,先调用GetModuleFileName取得自己的文件名称,据此来确定待加载的dll名称。 调GetMOduleFileName(NULL, &lpszFileName, MAX_LENGTH),再判断lpszFileName是否是自己想要得即可。别的DLL用到了GetModuleFileName也不奇怪,毕竟这是一个很常用的API。 关于编码转换的问题 帮忙看看 谢谢 chtmlview获取html标签之间的文本 问一个CListCtrl控件的滑动条问题 windows2003下调用ZwOpenSection 出错! 求助:将内存中的位图数据显示出来 VC通过HTTP向远程传递数据该怎么做,急!! 我要在拨号服务器中实现一些限制是否可以。 谁有IP助手的头文件? 记不起来,得到一个短整型的高位的函数是什么 为什么整数匹配比字符串速度快? 谁有将JPG保存成AVI文件的代码? 求助 文件传输程序 文件路径问题
但是,我这边的现象是这样的:在开源的代码上做了改动。
如果改变了编译后的可执行文件名称,发现程序运行时,弹出对话框,提示不能加载某个dll,而其他dll却可以正常加载。
是否可执行文件名称能够决定dll是否被加载?
dll的路径位置都没有变,exe一共要加载4个dll。
把exe改名后,其他的3个都能正常加载,就只有一个有问题,提示加载失败。如果问题不在dll身上,是在exe文件上?有这种可能不?
但是其他的可加载dll,也有用到这个函数。
麻烦再给指点指点。
别的DLL用到了GetModuleFileName也不奇怪,毕竟这是一个很常用的API。