社区
Delphi
帖子详情
新手的DLL问题~~在线~~
bluebottle
2003-10-06 12:52:34
如果一个test.exe调用了a.dll,b.dll,c.dll...,现在的问题是要将其中的a.dll,b.dll,或其它的一个或多个dll用新的dll文件更新,而test.exe正在运行,怎么办??
或且另一种方案是检测要更新的DLL在不在内存里被调用,和文件有没有被打开并被哪个进程打开以便将进程关闭更新DLL????
...全文
63
7
打赏
收藏
新手的DLL问题~~在线~~
如果一个test.exe调用了a.dll,b.dll,c.dll...,现在的问题是要将其中的a.dll,b.dll,或其它的一个或多个dll用新的dll文件更新,而test.exe正在运行,怎么办?? 或且另一种方案是检测要更新的DLL在不在内存里被调用,和文件有没有被打开并被哪个进程打开以便将进程关闭更新DLL????
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
7 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
conanfans
2003-10-06
打赏
举报
回复
在TEST.exe中把
需要更新的freelibrary掉就可以了.
更新后再load
bluebottle
2003-10-06
打赏
举报
回复
但我要在另外的test2.exe程序中对test.exe进行操作,没有TEST.EXE的修改权~~~
谢谢wanwangzhiwang(万王之王)的方案~~~
布学无数
2003-10-06
打赏
举报
回复
很好解决的嘛!!!
在TEST.EXE中设置两个方法,加载和卸载DLL。
在需要更新DLL的时候,与TEST.EXE建立通信,TEST.EXE收到后卸载DLL。
更新完毕后再通知TEST.EXE重新加载DLL。
这个方法简单,容易实现,并且很容易扩展,呵呵:)
劣势
2003-10-06
打赏
举报
回复
动态装载
wanwangzhiwang
2003-10-06
打赏
举报
回复
上面都是前辈总结的,希望能帮到你
wanwangzhiwang
2003-10-06
打赏
举报
回复
从内存中卸载dll
function KillDll(aDllName: string): Boolean;
var
hDLL: THandle;
aName: array[0..10] of char;
FoundDLL: Boolean;
begin
StrPCopy(aName, aDllName);
FoundDLL := False;
repeat
hDLL := GetModuleHandle(aName);
if hDLL = 0 then
Break;
FoundDLL := True;
FreeLibrary(hDLL);
until False;
if FoundDLL then
MessageDlg('Success!', mtInformation, [mbOK], 0)
else
MessageDlg('DLL not found!', mtInformation, [mbOK], 0);
end;
wanwangzhiwang
2003-10-06
打赏
举报
回复
或且另一种方案是检测要更新的DLL在不在内存里被调用,和文件有没有被打开并被哪个进程打开以便将进程关闭更新DLL????
使用GetModuleHandle('DLL_FileName')即可,这个函数返回一个句柄,你可以使用这个句柄~~~~~~~:),不过你在使用这个函数之后,最好用GetModuleFilaName()验证一下文件名,因为GetModuleHandle有可能获得一个奇怪的匹配项目:Exe文件。
条码,二维码生成与解码
工具vs2010,带有源代码,免费版Spire.Barcode.
dll
库,目录下有张code128.png的手机拍照图可以读取解码,供
新手
交流~~~
python实现串口传文件(调用PCOMM.
dll
Zmodem协议传输)
python实现调用PCOMM.
dll
Zmodem协议传文件, 顺带PcommLite 内含C++,DELPHI,VB 例子,以及 PCOMM.
dll
PCOMM.LIB, 还有linux系统rz/sz...但都有
问题
,作为
新手
的我反复修改了一整天的细节,最终才能运行,难~~~)
OllyDBG最终完美版
在制作过程中参考了TT小组翻译的OllyDBG帮助及dyk158修改、聆风听雨汉化的ODbyDYK修改版,主要是想让翻译更准确一点,能让
新手
把汉化版和TT小组汉化的帮助文档对照起来学习。在此对以上提到的各位表示衷心的感谢!...
c++
DLL
封装
DLL
问题
由于工作需要,自己手动封装一个
DLL
,简单说就是自己写一个
DLL
来加载...在编写测试过程中出过很多
问题
,因为我是第一次封装,小
问题
就不做记录,几个稍微大的
问题
,第一个封装完成调用运行的时候报错,提示使用错误的
解决Windows缺少vcomp100.
dll
问题
其实很多用户玩单机游戏或者安装软件的时候就出现过这种
问题
,如果是
新手
第一时间会认为是软件或游戏出错了,其实并不是这样,其主要原因就是你电脑系统的该
dll
文件丢失了或者损坏了,这时你只需下载这个vcomp100....
Delphi
5,388
社区成员
262,730
社区内容
发帖
与我相关
我的任务
Delphi
Delphi 开发及应用
复制链接
扫一扫
分享
社区描述
Delphi 开发及应用
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章