AGB  ·  Datenschutz  ·  Impressum  







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

Button in Fremdanwendung erzeugen

Ein Thema von the-networker · begonnen am 9. Apr 2004 · letzter Beitrag vom 12. Apr 2004
Antwort Antwort
the-networker

Registriert seit: 25. Okt 2003
Ort: Dortmund
33 Beiträge
 
Delphi 7 Professional
 
#1

Button in Fremdanwendung erzeugen

  Alt 9. Apr 2004, 11:48
Ist es möglich in einer Fremdanwendung einen Button oder
auch andere Controls zu erzeugen.

vielen Dank
The-Networker
  Mit Zitat antworten Zitat
DaFox

Registriert seit: 1. Aug 2003
Ort: Kippenheim
90 Beiträge
 
#2

Re: Button in Fremdanwendung erzeugen

  Alt 9. Apr 2004, 13:28
Hi,

das ist möglich. Du musst die WndProc des Zielfensters überschreiben. Stichwort: Hier im Forum suchenSubclassing

Gruß,
Markus
  Mit Zitat antworten Zitat
the-networker

Registriert seit: 25. Okt 2003
Ort: Dortmund
33 Beiträge
 
Delphi 7 Professional
 
#3

Re: Button in Fremdanwendung erzeugen

  Alt 11. Apr 2004, 08:28
Hallo Markus,

war jetzt ein wenig im Osterstress.

Wie kann ich denn das WND-Proc überschreiben.
Ich habe bis jetzt durch enumerieren den Application.Handle des
Zielprogrammes herausgefunden.

Gruß

Uwe
  Mit Zitat antworten Zitat
Benutzerbild von Luckie
Luckie

Registriert seit: 29. Mai 2002
37.621 Beiträge
 
Delphi 2006 Professional
 
#4

Re: Button in Fremdanwendung erzeugen

  Alt 11. Apr 2004, 14:51
Ich bin mir gar nicht so sicher, ob das überhaupt geht unter NT ff., weil du ja in den anderen Prozess rein musst.

Den Button bekommst du mit MSDN-Library durchsuchenCreateWindow hin. Und die WndProc kannst du mit MSDN-Library durchsuchenSetWindowLOng umbiegen.

Die Forensuche könnte auch Ergebnisse liefern, ich meine Assarabad hätte sich dazu schon mal geäußert.
Michael
Ein Teil meines Codes würde euch verunsichern.
  Mit Zitat antworten Zitat
the-networker

Registriert seit: 25. Okt 2003
Ort: Dortmund
33 Beiträge
 
Delphi 7 Professional
 
#5

Re: Button in Fremdanwendung erzeugen

  Alt 12. Apr 2004, 10:01
Hallo Lucky,

schönen Dank für die Anregungen.
Ich werde jetzt versuchen die unterschiedlichen Ansätze auszuprobieren.
Wenn ich nicht weiterkomme würde ich dieses Thema gerne noch einmal hier
reinstellen.

Gruß
Uwe
  Mit Zitat antworten Zitat
TheXception
(Gast)

n/a Beiträge
 
#6

Re: Button in Fremdanwendung erzeugen

  Alt 12. Apr 2004, 14:29
das mit dem createwindow läuft ja ganz gut aber wie geht des mit dem SetWindowlong? Kann da jemand ein beispiel geben?
  Mit Zitat antworten Zitat
DaFox

Registriert seit: 1. Aug 2003
Ort: Kippenheim
90 Beiträge
 
#7

Re: Button in Fremdanwendung erzeugen

  Alt 12. Apr 2004, 21:56
Hi,

Zitat von KeyCode008:
das mit dem createwindow läuft ja ganz gut aber wie geht des mit dem SetWindowlong? Kann da jemand ein beispiel geben?
Beispiele sollten hier im Forum zu finden sein.

Window procedure umbiegen:
Code:
// alte WndProc speichern
// zum "Beenden" wird später wieder alte WndProc zurückgesetzt
oldProc := GetWindowLong(TargetWnd, GWL_WNDPROC);
// alte mit unserer neuen, eigenen WndProc überschreiben
SetWindowLong(TargetWnd, GWL_WNDPROC, Integer(@NewWndProc));
Window procedure zurücksetzen:
Code:
  SetWindowLong(TargetWnd, GWL_WNDPROC, oldProc);
Wie Luckie aber schon angemerkt hat, muss das im Addressraum der Zielanwendung geschehen. Wir müssen diesen (Pseudo-)Code also in den anderen Addressraum Hier im Forum sucheninjezieren. Oft werden dazu Hooks und MMFs benutzt. Hier im Forum suchenLuckieSpy

Gruß,
Markus
  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 13:28 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