比如我想取得:windows.exe(正在运行的程序或者进程)的目录,该怎么操作.绝对给分的 我是知恩图报的人
解决方案 »
- procedure可减少create次数,如多次调用.(什么意思啊??)
- 为什么Activex打包成cab文件,新版本下载到客户端总提示需要重新启动计算机?
- 谁 知道 2005QQ是用什么打包工具 打包了
- 关于Tchart饼图的问题,急急,在线等!
- chart中任意一点的标签显示的控制(高分,在线)
- 如何让多个DBGRID使用同一个ADOQUERY.同一个DBNAVIGATE和同一个DATASOURCE
- Interface not support
- 如何得到word文档的总页数?
- 送分:在建立数据库时,确定数据库的命名规范注意哪些方面
- 为什么调用TerminateProcess不能终止死循环进程?并且一直占用文件。
- 现在很流行的下载者!
- 程序可不可以在服务器上实时监测到客户端使用FTP上传的文件?
dwThreadID: DWORD; //主线程的ID
Curwindow: Thandle; //取窗口的句柄 这两个就不用我说了吧....
begin GetWindowThreadProcessId(Curwindow, @dwThreadID);
{获取路径}
if dwThreadID<>0 then
begin
hWindow:= OpenProcess(PROCESS_ALL_ACCESS,false,dwThreadID);
if hWindow<>0 then
begin
if EnumProcessModules(hWindow,@hMod,sizeof(hMod),cbNeeded) then
begin
SetLength(FilePatch, MAX_PATH);
iLen := GetModuleFileNameEx(hWindow, hMod, PCHAR(FilePatch), MAX_PATH);
if iLen <> 0 then
begin
SetLength(FilePatch, StrLen(PCHAR(FilePatch)));
PatchEdit.Text:=FilePatch;
end;
end;
CloseHandle(hWindow);
end;
end;
end;
顺便说一句,Delphi 提供了分析文件名的多个函数,如果你需要从文件名中得到路径名,可用下面的两个函数,这两个函数有一点点微小的差别:
ExtractFilePath(FileName:String)
该函数返回路径名,其结尾字符总是“\”
ExtractFileDir(FileName:String)
该函数同样返回路径名,但不包括结尾的字符“\”,除非返回的路径是根目录。