![]() |
Pchar := @Funktion zuweisen
Hi,
ich versuche atm vergeblich folgendes:
Delphi-Quellcode:
Also wenn ich EnumWindowsProc auslagern würde in eine Dll klappt es das weis ich aber ist mir eigetnlich zu umständlich bzw. unpraktisch wegen einer funktion eine Dll zu laden etc...
function EnumWindowsProc(wHandle: HWND; apphandle: Cardinal): Bool; stdcall; export;
EnumWindows(@EnumWindowsProc, Application.Handle); // Fehler: Variable erforderlich stehe gerade total auf dem Schlauch und weis einfach nicht weiter kann mir vielleicht jemand Helfen? ;) |
Re: Pchar := @Funktion zuweisen
Ehrlich gesagt verstehe ich das Problem nicht :gruebel:. Zeig doch mal etwas mehr Code oder versuch es mit
Delphi-Quellcode:
IIRC gab es eine Einstellung, dass Funktionsrückgabewerte Variablen zugewiesen werden müssen, hab aber vergessen, wie die hieß.
if EnumWindows(@EnumWindowsProc, Application.Handle) then
|
Re: Pchar := @Funktion zuweisen
Delphi-Quellcode:
Und EnumWindows erwartet als 1. Parameter: (WNDENUMPROC lpEnumFunc, // pointer to callback function).
function EnumWindowsProc(wHandle: HWND; apphandle: Cardinal): Bool; stdcall; export;
procedure TForm1.Button4Click(Sender: TObject); begin RichEdit1.Clear; EnumWindows( {@EnumWindowsProc}, Application.Handle); // keine Variable end; function TForm1.EnumWindowsProc(wHandle: HWND; apphandle: Cardinal): Bool; begin Result := True; PostMessage(apphandle, WM_USER+33, wHandle, 0); end; Nur bekomm ich es nicht hin den Pointer zu übergeben mehr nicht. Wie gesagt steh dies bezüglich auf der Leitung. ;) |
Re: Pchar := @Funktion zuweisen
EnumWindowsProc darf keine Objektmethode sein, sonst passt die Signatur nicht. Du kannst die Funktion genau wie in der DLL deklarieren und nur das "export;" weglassen.
|
Re: Pchar := @Funktion zuweisen
Genau hab die Funktions deklaration angepasst und funktioniert. Danke für die Hilfe. ;) Stand einfach auf der Leitung. :P
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:58 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 by Thomas Breitkreuz