AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Win32/Win64 API (native code) Delphi Buttonklick in fremder Anwendung
Thema durchsuchen
Ansicht
Themen-Optionen

Buttonklick in fremder Anwendung

Ein Thema von Fritzmaier · begonnen am 15. Mai 2007 · letzter Beitrag vom 15. Mai 2007
Antwort Antwort
Fritzmaier

Registriert seit: 30. Okt 2004
53 Beiträge
 
#1

Buttonklick in fremder Anwendung

  Alt 15. Mai 2007, 18:59
möchte eine .Net-Anwendung dahingehend fernsteuern, daß ich 2 Edit-Felder ausfüllen lasse, dann den OK-Button anklicken lasse und diese Anwendung startet dann.

dies funktioniert auch, allerdings nur, wenn das Formular meines Delphi-Programms den Button der .Net-Anwendung nicht überdeckt.
Die Edits werden immer ausgefüllt, aber der Button wird nur geklickt, wenn er sichtbar ist.

Würde gern die .Net-Anw. mit meinem Formular komplett überdecken, das sich nach Erledigung seiner Aufgabe schließt und die gestartete .Net-Anw. sichtbar wird.

Danke für Tipps Fritz
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Buttonklick in fremder Anwendung

  Alt 15. Mai 2007, 19:26
Moin Fritz,

wie sprichst Du denn die Anwendung an?
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Fritzmaier

Registriert seit: 30. Okt 2004
53 Beiträge
 
#3

Re: Buttonklick in fremder Anwendung

  Alt 15. Mai 2007, 19:33
mit Code, generiert von Winspy:
Code:
function FindWindowEx2(hParent: HWND; ChildClassName: string; ChildNr: Word): HWND;
var
  i: Word;
  hChild: HWND;

begin
  hChild := 0;
  Result := 0;
  ChildNr := ChildNr - 1;
  for i := 0 to ChildNr do
  begin
    hChild := FindWindowEx(hParent, hChild, PChar(ChildClassName), nil);
    if hChild = 0 then
      Exit;
    Result := hChild;
  end;
end;

procedure TForm1.Button2Click(Sender: TObject);
var
  wnd: HWND;
begin
  wnd := FindWindow('WindowsForms10.Window.8.app3','Anwendung');
  wnd := FindWindowEx2(wnd,'WindowsForms10.BUTTON.app3', 2);
  if wnd <> 0 then    SendMessage(wnd, BM_Click, 0, 0);
  end;
(den Code für die 2 Edits habe ich weggelassen)
  Mit Zitat antworten Zitat
Christian Seehase
(Co-Admin)

Registriert seit: 29. Mai 2002
Ort: Hamburg
11.117 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Buttonklick in fremder Anwendung

  Alt 15. Mai 2007, 19:39
Moin Fritz,

und hast Du mal nachgesehen, welchen Wert wnd hier

if wnd <> 0 then hat?
Tschüss Chris
Die drei Feinde des Programmierers: Sonne, Frischluft und dieses unerträgliche Gebrüll der Vögel.
Der Klügere gibt solange nach bis er der Dumme ist
  Mit Zitat antworten Zitat
Fritzmaier

Registriert seit: 30. Okt 2004
53 Beiträge
 
#5

Re: Buttonklick in fremder Anwendung

  Alt 15. Mai 2007, 19:51
der Wert ist <>0.

Der Button wird auch gefunden,wenn mein Delphi-Form ganz über dem Form der .Net-Anw. liegt. Aber der Buttonklick wird nicht ausgelöst, wenn der Button verdeckt ist.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:13 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz