首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > .NET >

根据窗口句柄,怎么获得程序的目录

2012-03-17 
根据窗口句柄,如何获得程序的目录?我是通过handle:FindWindow(‘xxx,nil)得到handle的,请问怎么通过这个h

根据窗口句柄,如何获得程序的目录?
我是通过handle:=FindWindow(‘xxx',nil)得到handle的,请问怎么通过这个handle获得xxx这个程序的目录?

[解决办法]
midwinter(仲冬)回复于 2005-01-23 09:37:48 得分 0
整理出来就是这样:

Delphi(Pascal) code
function   GetModuleFileNameEx(hProcess:   HINST;   hModule:   HINST;   lpFilename:   PChar;        nSize:   DWORD):   DWORD;   stdcall;       function   GetModuleFileNameEx;   external   'psapi.dll'   name   'GetModuleFileNameExA';       function   GetModuleFileNameFromWindow(hWnd:   HWND):   string;    var        Buffer:   array[0..54]   of   Char;        ProcessID:   Cardinal;        hProcess:   Cardinal;    begin        Result   :=   '';        if   hWnd   <>   0   then        begin            GetWindowThreadProcessId(hWnd,   ProcessID);            hProcess   :=   OpenProcess(PROCESS_ALL_ACCESS,   True,   ProcessID);            if   hProcess   <>   0   then            begin                GetModuleFileNameEx(hProcess,   0,   @Buffer,   255);                Result   :=   Buffer;            end;        end;    end; 

热点排行