Конференция "WinAPI" » Как написать в чужом окне [D7, WinXP]
 
  • Deamon_777 © (30.04.09 09:13) [0]
    Здравствуйте!
    У меня не получается найти компонент Memo в программе  Notepad.exe
    Делаю это вот так:
    HNote := FindWindow(nil,PChar('Безымянный - Блокнот'));
    HMemo :=FindWindowEx(HNote, 0, 'TMemo',nil);
    Подскажите, как можно найти это окно?
  • Игорь © (30.04.09 09:23) [1]
    HMemo :=FindWindowEx(HNote, 0, 'Edit',nil);
  • Deamon_777 © (30.04.09 09:28) [2]
    Спасибо все получилось )))
  • Anatoly Podgoretsky © (30.04.09 09:50) [3]
    > Deamon_777  (30.04.2009 9:13:00)  [0]

    Его нет
  • brother © (30.04.09 09:55) [4]
    > Его нет

    и быть не могло ;)
  • Anatoly Podgoretsky © (30.04.09 10:14) [5]
    Могло, но не там
  • Anatoly Podgoretsky © (30.04.09 10:15) [6]
    Кстати, если класс окна не известен, то существуют множество шпионов, чтобы узнать его.
  • clickmaker © (30.04.09 11:27) [7]
    > HNote := FindWindow(nil,PChar('Безымянный - Блокнот'));

    на не русской винде не будет работать
  • brother © (30.04.09 11:36) [8]
    > Могло, но не там

    я именно про "там" говорил
  • Игорь © (30.04.09 23:44) [9]
    Удалено модератором
  • Германн © (01.05.09 01:34) [10]
    Удалено модератором
  • Кролик-Фролик (01.05.09 02:28) [11]
    Удалено модератором
  • Игорь © (01.05.09 02:45) [12]
    Удалено модератором
  • Кролик-Фролик (01.05.09 02:53) [13]

    > Игорь ©   (01.05.09 02:45) [12]

    я верил в вашу бескорыстную помощь
    так оно и есть
    слава Игорю Зоркову, программисту и диагносту!
  • BigVovan © (19.05.09 20:19) [14]
    unit Unit1;

    interface

    uses
     Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
     ExtCtrls, StdCtrls;

    type
     TForm1 = class(TForm)
       Timer1: TTimer;
       GroupBox1: TGroupBox;
       GroupBox2: TGroupBox;
       Label1: TLabel;
       GroupBox3: TGroupBox;
       Label2: TLabel;
       Label3: TLabel;
       Label4: TLabel;
       procedure Timer1Timer(Sender: TObject);
     private
       { Private declarations }
     public
       procedure WndProc(var Message: TMessage); override;
     end;

    var
     Form1: TForm1;

    implementation

    {$R *.DFM}

    procedure TForm1.Timer1Timer(Sender: TObject);
    var
     PosMouse: TPoint;
     WinMouse:HWnd;
     NameWin:Pchar;
    begin
    GetCursorPos(PosMouse);
    Label1.Caption:=FloatToStr(PosMouse.X);
    Label2.Caption:=FloatToStr(PosMouse.Y);
    WinMouse:=WindowFromPoint(PosMouse);
    if GetClassName(WinMouse, NameWin,20)<>0 then
    Label3.Caption:=NameWin else Label3.Caption:='N';
    end;

    procedure TForm1.WndProc(var Message: TMessage);
    begin
     Label4.Caption:=FloatToStr(Message.Msg);
     inherited;
    end;

    end.
  • Игорь Шевченко © (19.05.09 21:27) [15]
    BigVovan ©   (19.05.09 20:19) [14]

    Внушаить
 
Конференция "WinAPI" » Как написать в чужом окне [D7, WinXP]
Есть новые Нет новых   [134434   +28][b:0][p:0.002]