Конференция "WinAPI" » Найти Edit в окне Explorer'a
 
  • batya15 (28.05.10 03:09) [0]
    Уже сутки бьюсь, помогите найти адресную строчку в окне запушенного explorer'a.
    В других окнах нахожу на ура Edit'ы...


    begin
    var
    s: PChar;
    h: THandle;
    begin
    s := '1234';
    h := FindWindow(nil,'Мой компьютер');
    q := FindWindowEx( h, 0, 'Edit',nil);
    SendMessage(q, WM_SETTEXT, 0, Integer(s));
    end;



    Окно тоже находиться без проблемм, проверял, менял заголовок...
  • Leonid Troyanovsky © (28.05.10 10:40) [1]

    function EnumFunc(h: HWND; Strings: TStrings): Bool; stdcall;
    var
     buf: array [0..255] of Char;
     s: String;
    begin
     s := '';
     while (h <> 0) do
       begin
          GetClassName(h, buf, SizeOf(buf));
          s := Format('%s (%d)--', [buf, h]) + s;
          h := GetParent(h);
       end;
     Strings.Add(Copy(s, 1, Length(s)-2));
     Result := True;
    end;

    procedure TForm1.Button1Click(Sender: TObject);
    var
     h: HWND;
    begin
     h := FindWindow(nil, PChar(Edit1.Text));
     with ListBox1, Items do
       begin
         BeginUpdate;
         EnumChildWindows(h, @EnumFunc, LParam(Items));
         EndUpdate;
       end;
    end;


    --
    Regards, LVT.
 
Конференция "WinAPI" » Найти Edit в окне Explorer'a
Есть новые Нет новых   [134467   +7][b:0][p:0.001]