[code=Delphi(Pascal)]
var ThePathEditHandle: THandle; // 全局
function _EnumEditWndProc(AhWnd: LongInt; AlParam: LParam): boolean; stdcall;
var
WndClassName: array[0..511] of Char;
begin
GetClassName(AhWnd, WndClassName, 512);
if string(WndClassName) = 'Edit' then ThePathEditHandle:= AhWnd;
result:= true;
end;
// 调用
var
h,h2: THandle;
Buf: array[0..255] of char;
begin
// ............ 你的其它代码, 如找句柄..
GetClassName(h, szClass, 255); // h 枚举句柄
if String(szClass) = 'SysListView32' then // 找到 SysListView32
begin
h2:= GetForegroundWindow();
EnumChildWindows(h2, @_EnumEditWndProc, 0);
sendmessage(ThePathEditHandle, WM_GETTEXT, 255, integer(@buf));
memo1.Lines.Add(string(buf));
end;
end;
[/Code]