![]() |
Kleines Problem mit uallcollection
Moin Delphipraxis,
ich habe zwei kleine Anwendungen geschreiben. Die eine (Project1) ist eine Formularanwendung und hat einfach nur einen Button, mit folgender Prozedur:
Delphi-Quellcode:
Mein Zeil ist es nun über ein zweites Programm in diesen Aufruf von MessageBoxA einzugreifen und diesen zu manipulieren.
procedure TForm1.Button1Click(Sender: TObject);
begin MessageBoxA(0,'this is a test','test',0); end; Habe dazu folgendes Programm geschrieben und teils aus den Beispielen der uallcollection kopiert:
Delphi-Quellcode:
Wenn ich das Programm Project1 gestartet habe und das Programm hook starte bekomme ich immer folgende Fehlermeldungen:
program hook;
{$APPTYPE CONSOLE} uses Windows, uallHook, uallProcess; var origMessageBoxA: function (hWnd: HWND; lpText, lpCaption: PAnsiChar; uType: UINT): Integer; stdcall; newMessageBoxA: function (hWnd: HWND; lpText, lpCaption: PAnsiChar; uType: UINT): Integer; stdcall; function callbackMessageBoxA(hWnd: HWND; lpText, lpCaption: PAnsiChar; uType: UINT): Integer; stdcall; begin Result := newMessageBoxA(hWnd,PChar(lpText+' [hooked]'),lpCaption,uType); end; procedure DllMain; var dwoglModule: DWord; begin dwoglModule := LoadLibrary('user32.dll'); @origMessageBoxA := GetProcAddress(dwoglModule,'MessageBoxA'); uallHook.HookCode(@origMessageBoxA,@callbackMessageBoxA,@newMessageBoxA); end; procedure Main; var dwPID: DWord; begin dwPID := uallProcess.FindProcess('Project1.exe'); if (dwPID <> 0) then begin uallHook.InjectMe(dwPID,@DllMain); end; end; begin Main; end. Zitat:
Zitat:
Zitat:
Zitat:
Zitat:
Vielen Dank im Vorraus! Gruß, cisum |
Re: Kleines Problem mit uallcollection
Möchte nicht aufdringlich wirken, aber weiß wirklich niemand worans liegen könnte? :oops:
|
Re: Kleines Problem mit uallcollection
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 05:21 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz