请问如何判断DLL文件或者sys文件是否在运行,帮帮忙(100分)

  • 主题发起人 主题发起人 darlingpeng
  • 开始时间 开始时间
D

darlingpeng

Unregistered / Unconfirmed
GUEST, unregistred user!
请问如何判断DLL文件或者sys文件是否在运行<br>eg:<br>&nbsp; DDSFilter.sys, TYEFCtrl.dll,如何判断这样的驱动文件是否在运行?
 
有没有知道的哥们,帮帮小弟!
 
没有人知道么
 
最简答的方法,就是尝试删除文件;<br>如果删除失败就是正在使用;<br><br>删除前做个备份,如果删除成功,则恢复,同时表明文件不在使用中....
 
或者使用这个函数<br><br>{-----------------------------------------------------------------------------<br>&nbsp; 函数名称: IsFileInUse<br>&nbsp; 作者: &nbsp; &nbsp; Levon819@msn.com<br>&nbsp; 日期: &nbsp; &nbsp; 2007-四月-09<br>&nbsp; 参数: &nbsp; &nbsp; const fName: string<br>&nbsp; 结果: &nbsp; &nbsp; Boolean<br>&nbsp; 功能: &nbsp; &nbsp; 判断文件是否正在使用;<br>-----------------------------------------------------------------------------}<br><br>Function IsFileInUse(Const fName: String): BOOLEAN;<br>Var<br>&nbsp; HFileRes: HFILE;<br>Begin<br>&nbsp; Result := false;<br>&nbsp; If Not FileExists(fName) Then<br>&nbsp; &nbsp; Exit;<br>&nbsp; HFileRes := CreateFile(PChar(fName), GENERIC_READ Or GENERIC_WRITE,<br>&nbsp; &nbsp; 0 {this is the trick!}, Nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);<br>&nbsp; Result := (HFileRes = INVALID_HANDLE_VALUE);<br>&nbsp; If Not Result Then<br>&nbsp; &nbsp; CloseHandle(HFileRes);<br>End;
 
if getmodulehandle('TYEFCtrl.dll')&lt;&gt;0 then<br>showmessage('已载入');
 
多人接受答案了。
 
后退
顶部