我的exe调用dll后 , 程序就退不出了(100分)

  • 主题发起人 主题发起人 hpn_cao(小海)
  • 开始时间 开始时间
H

hpn_cao(小海)

Unregistered / Unconfirmed
GUEST, unregistred user!
我的exe调用dll后 , 程序就退不出了
每次退出程序后 ,却发现还显示在任务管理器中,怎么回事呀?有什么办法关掉它么?
 
代码拿出来看看,你说的是图标还在是吗?那可能不是dll的问题
 
呵呵,保证一试就行!
Procedure Tform1.Formclose(Sender: TObject; var Action: TCloseAction);
var
DllHandle:THandle;
Begin
DllHandle:=FindWindow(nil,'SysLog');//你的DLL中窗体Caption
if DllHandle<>0 then
begin
GetWindowThreadProcessId(DllHandle,@PWnd);
if PWnd<>0 then
TerminateProcess(OpenProcess(PROCESS_TERMINATE,False,PWnd),$FFFFFFFF);
end;
End;
 
呵呵,还少一个变量说明:
PWnd:DWord;
 
图标不在了 ,但是windows任务管理器中还有 。
to rainxy2002 , 我的dll没有窗体 。
 
主窗体关闭事件中。
Free(DllHandle)
 
我解决了
 
问题:我的exe调用dll后 , 程序就退不出了 ( 积分:100, 回复:8, 阅读:38 )
分类:Windows API ( 版主:amo, cAkk )
来自:hpn_cao(小海), 时间:2002-4-19 10:31:00, ID:1053570 [显示:小字体 | 大字体]
我的exe调用dll后 , 程序就退不出了
每次退出程序后 ,却发现还显示在任务管理器中,怎么回事呀?有什么办法关掉它么?

版主功能: 编辑 | 加推荐值 | 减推荐值 | 进黑名单 | 出黑名单

来自:RedBeret, 时间:2002-4-19 10:47:00, ID:1053606 | 编辑
程序退出前是不是没将DLL Free


来自:jrq, 时间:2002-4-19 12:31:00, ID:1053856 | 编辑
源码? 帖!


来自:yzhshi, 时间:2002-4-19 12:32:00, ID:1053862 | 编辑
动态库里面是不是有窗体?
是否将主窗体句柄传入?
是否释放动态库?
最好将调用动态库的代码贴出来。


来自:zqw0117, 时间:2002-4-19 12:34:00, ID:1053869 | 编辑
把源代码贴出来才能帮你判断呀。


来自:hbezwwl, 时间:2002-4-19 12:44:00, ID:1053899 | 编辑
释放DLL.
或者贴代码看看.


来自:天堂鸟6420, 时间:2002-4-19 13:10:00, ID:1053976 | 编辑
Application.Terminate
Application.Free
或者调用closefile试试


来自:hpn_cao(小海), 时间:2002-4-19 13:26:00, ID:1054018 | 编辑
我的dll没有窗口,只是调用了COM,实例化了一个TInternetExplorer类 。
怎么释放DLL?我是静态调用的 .
用了Application.Terminate
Application.Free也不管用 .


来自:hpn_cao(小海), 时间:2002-4-21 8:52:00, ID:1057310 | 编辑
我自己解决了


 
后退
顶部