function EnumChildWindowsProc(hwnd: Integer; lparam: Longint): Boolean; stdcall; var buffer: array[0..255] of char; begin Result := True; GetClassName(hwnd,buffer,256); if StrPas(Buffer)= 'Edit ' then begin SendMessage(hwnd,WM_GETTEXT,256,lparam); Result:=False; end; end; //SendMessage+WM_GETTEXT procedure TForm1.Button1Click(Sender: TObject); var hwnd: Integer; buffer: array[0..255] of char; begin hwnd := FindWindow( 'CabinetWClass ',nil); if hwnd < > 0 then begin EnumChildWindows(hwnd,@EnumChildWindowsProc,Integer(@buffer[0])); Caption := StrPas(buffer); end; end;
//------------------------------------------------------------------------------function EnumChildWindowsProc(hWnd:HWND;lparam:LPARAM):Boolean;stdcall; var ssText:array[0..254] of Char; id:Integer; begin GetWindowText(hWnd,ssText,255); id:=GetDlgCtrlID(hWnd); if Trim(StrPas(sstext)) <> '' then Form1.lst1.Items.Add(' ------>' + ssText + '---->' + IntToDigit(id,16,0)); result:=True; end; //------------------------------------------------------------------------------function EnumwindowsProc(hWnd:HWND;lparam:LPARAM):Boolean;stdcall; var sText:array[0..254] of Char; id:Integer; begin GetWindowText(hWnd,sText,255); id:=GetDlgCtrlID(hWnd); if Trim(StrPas(sText)) <> '' then begin Form1.lst1.Items.Add(Trim(StrPas(sText)) + '---->' + IntToStr(id));; EnumChildWindows(hWnd,@EnumChildWindowsProc,0); end; result:=True; end; //------------------------------------------------------------------------------ procedure TForm1.btn1Click(Sender: TObject); begin lst1.Clear; EnumWindows(@EnumwindowsProc,0); end;
var
buffer: array[0..255] of char;
begin
Result := True;
GetClassName(hwnd,buffer,256);
if StrPas(Buffer)= 'Edit ' then
begin
SendMessage(hwnd,WM_GETTEXT,256,lparam);
Result:=False;
end;
end;
//SendMessage+WM_GETTEXT
procedure TForm1.Button1Click(Sender: TObject);
var
hwnd: Integer;
buffer: array[0..255] of char;
begin
hwnd := FindWindow( 'CabinetWClass ',nil);
if hwnd < > 0 then
begin
EnumChildWindows(hwnd,@EnumChildWindowsProc,Integer(@buffer[0]));
Caption := StrPas(buffer);
end;
end;
var
ssText:array[0..254] of Char;
id:Integer;
begin
GetWindowText(hWnd,ssText,255);
id:=GetDlgCtrlID(hWnd);
if Trim(StrPas(sstext)) <> '' then
Form1.lst1.Items.Add(' ------>' + ssText + '---->' + IntToDigit(id,16,0));
result:=True;
end;
//------------------------------------------------------------------------------function EnumwindowsProc(hWnd:HWND;lparam:LPARAM):Boolean;stdcall;
var
sText:array[0..254] of Char;
id:Integer;
begin
GetWindowText(hWnd,sText,255);
id:=GetDlgCtrlID(hWnd);
if Trim(StrPas(sText)) <> '' then
begin
Form1.lst1.Items.Add(Trim(StrPas(sText)) + '---->' + IntToStr(id));;
EnumChildWindows(hWnd,@EnumChildWindowsProc,0);
end;
result:=True;
end;
//------------------------------------------------------------------------------
procedure TForm1.btn1Click(Sender: TObject);
begin
lst1.Clear;
EnumWindows(@EnumwindowsProc,0);
end;
function xxxxx..... ; of object;