Autor Beitrag
sideruner
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 41



BeitragVerfasst: Fr 11.01.08 16:55 
Moin ;)

ich habe da ein kleines problem mit findwindowex und habe im forum nix passendes gefunden

Ich versuche in einem 2ten Program einen Button über mein erstes Program zu drücken.
Wenn das Fenster von meinem ersten Program über dem Fenster von meinem zweiten Program ist, dann klappt das mit dem Button drücken. Ist das Fenster meines ersten Programs aber nicht über dem Fenster meines Zweiten Programms, so bekomm ich einen anderen Handle und der Button wird nicht gedrückt

Code vom ersten Programm:

ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
procedure TForm1.Button1Click(Sender: TObject);
var
  wnd :cardinal;
begin
  wnd := FindWindow(nil'Program2');
  wnd := Findwindowex(wnd,0,'TspSkinPageControl',nil);
  wnd := Findwindowex(wnd,0,'TspSkinTabSheet','Standart');
  wnd := Findwindowex(wnd,0,'Tspskinbutton','show');  
  // wenn das Fenster dieses Programmes über dem zweiten Programm ist, dann ist wnd = 66670
  // Ist das Fenster dieses Programmes nicht über dem zweiten programm, so ist wnd = 918650

  postmessage(wnd,wm_lbuttondown,0,0);
  postmessage(wnd,WM_LBUTTONUP,0,0);
  showmessage(inttostr(wnd));
end;


Kann mir einer sagen woran das liegt, denn ich möchte nicht das das erste program immer über dem zweiten program sein muss

danke schonmal im voraus :D
sideruner Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 41



BeitragVerfasst: Fr 11.01.08 18:41 
Ok hab das Problem gelöst.

musste nur
ausblenden Delphi-Quelltext
1:
2:
var
 wnd :cardinal;


auf

ausblenden Delphi-Quelltext
1:
2:
var
 wnd :HWND;


umändern^^

Sry für den thread :P