AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

WindowProc einer Klasse?

Ein Thema von TriphunEM · begonnen am 1. Feb 2006 · letzter Beitrag vom 4. Feb 2006
Antwort Antwort
Seite 2 von 2     12   
Benutzerbild von retnyg
retnyg

Registriert seit: 11. Feb 2005
193 Beiträge
 
#11

Re: WindowProc einer Klasse?

  Alt 2. Feb 2006, 18:45
oder probiere es mal mit klasseninstanz.handle oder .FHandle
  Mit Zitat antworten Zitat
NeoXan
(Gast)

n/a Beiträge
 
#12

Re: WindowProc einer Klasse?

  Alt 2. Feb 2006, 22:34
Also:

SetWindowText funzt, d.h. der Handle wurde richtig gefunden...nur scheint SetWindowLong nicht wirklich zu funktionieren...auch OldWndProc := TWndProc(Pointer(GetWindowLong(WindowHandle, GWL_WNDPROC))); nicht, denn wenn es um
if @OldWndProc <> nil then geht, so wird die Kondition nicht erfüllt, d.h. OldWndProc ist nil...

Meine Funktion schaut so aus:

Delphi-Quellcode:
function TRONPSTransClass.RestoreHandle():boolean;
begin
  if @OldWndProc <> nil then
  begin
    SetWindowLong( WindowHandle, GWL_WNDPROC, LongInt(@OldWndProc));
    SetWindowText( WindowHandle, PChar('...'));
    Result := true;
  end;
end;

function TRONPSTransClass.InjectOwnHandle(): boolean;
begin
  if(isWindow( WindowHandle )) then
  begin
    RestoreHandle();
    OldWndProc := TWndProc(Pointer(GetWindowLong(WindowHandle, GWL_WNDPROC)));
    if @OldWndProc <> nil then
    begin
      SetWindowLong( WindowHandle, GWL_WNDPROC, LongInt(@NewWndProc));
      SetWindowText( WindowHandle, PChar('...'));
    end;
  end;
end;
siehe http://www.delphipraxis.net/internal...ct.php?t=73357
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#13

Re: WindowProc einer Klasse?

  Alt 3. Feb 2006, 07:37
Es wird wohl etwas komplizierter als ich dachte:

Win32 SDK
The SetWindowLong function fails if the window specified by the hWnd parameter does not belong to the same process as the calling thread.

Vielleicht helfen die Informationen aus diesem thread weiter: klick

marabu
  Mit Zitat antworten Zitat
TriphunEM

Registriert seit: 8. Jan 2004
147 Beiträge
 
#14

Re: WindowProc einer Klasse?

  Alt 3. Feb 2006, 09:47
oh also jungs ich komm jetzt hier nicht mehr nach und versteh nur bahnhof ???

also ich will die Botschaft WM_RBUTTONDOWN aus der Klasse TTBPopupWindow abfangen.

Könnt bitte jemand so nett sein und den hier geposteten code mal für mein Problem umstricken?

Wäre sehr dankbar!?
  Mit Zitat antworten Zitat
Benutzerbild von retnyg
retnyg

Registriert seit: 11. Feb 2005
193 Beiträge
 
#15

Re: WindowProc einer Klasse?

  Alt 3. Feb 2006, 10:05
setmsghook(meineKomponente.handle); @neoxan: wenn du das mit einem fremd-progamm machen willst musst du eine dll machen und die im zielprozess laden
CreateRemoteThread
  Mit Zitat antworten Zitat
TriphunEM

Registriert seit: 8. Jan 2004
147 Beiträge
 
#16

Re: WindowProc einer Klasse?

  Alt 3. Feb 2006, 12:27
äm, die Klasse TTBPopupWindow besitzt aber igrendwie kein Handle-Wert!???

Vielleicht ist es ja eine andere Klasse, bloß wie finde ich das raus?
  Mit Zitat antworten Zitat
Benutzerbild von retnyg
retnyg

Registriert seit: 11. Feb 2005
193 Beiträge
 
#17

Re: WindowProc einer Klasse?

  Alt 3. Feb 2006, 15:56
die klasse hab ich nicht, such doch einfach im source nach hwnd oder handle
dann solltest du die entsprechende property finden

falls es sich um ein popupmenü handelt kann es jedoch gut möglich sein, dass es gar kein eigenes handle gibt
  Mit Zitat antworten Zitat
TriphunEM

Registriert seit: 8. Jan 2004
147 Beiträge
 
#18

Re: WindowProc einer Klasse?

  Alt 3. Feb 2006, 17:27
naja, das weiß ich ne, bloß ich weiß das WinSpy mir die Botschaft anzeigt, also muss sie auch irgendwie abfangbar sein!
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#19

Re: WindowProc einer Klasse?

  Alt 3. Feb 2006, 21:23
Hallo Frank,

als Entschädigung für das vorübergehende (und unbeabsichtigte) thread hijacking habe ich dir etwas Code in deinem ursprünglichen thread hinterlassen: klick

Grüße vom marabu
  Mit Zitat antworten Zitat
TriphunEM

Registriert seit: 8. Jan 2004
147 Beiträge
 
#20

Re: WindowProc einer Klasse?

  Alt 4. Feb 2006, 08:24
hi. danke, aber jetzt dreht es sich nur noch um die Toolbar2000.

Warum, habe ich dir auf dein Posting in meinem alten Thema beantwortet. Onlick und rechte Maustaste

trotzdem danke für deine mühe.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 23:03 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