beim Kompilieren von Graphics32-1-8-3
stoße ich auch ein scheinbar unüberwindliches Problem:
Es sind da folgende Definitionen:
Code: Alles auswählen
type
TWndMethod = procedure(var msg : TMessage) of object;
function AllocateHWnd(Method: TWndMethod): HWND;
type
TThemeNexus = class
private
FWindowHandle: HWND;
protected
procedure WndProc(var Message: TMessage);
procedure OpenVisualStyles;
procedure CloseVisualStyles;
public
constructor Create;
destructor Destroy; override;
end;
constructor TThemeNexus.Create;
// var wdm: TWndMethod;
begin
// wdm := @WndProc;
FWindowHandle := {$IFDEF COMPILER6}Classes.{$ENDIF}AllocateHWnd(@WndProc);
OpenVisualStyles;
end;
kommt die Compilermeldung: Error: Variable identifier expected;
Wenn ich einen Zeiger auf die @WndProc benützen will, um dann mit MemCopy zu Kopieren, dann geht das nicht, weil ich dann @@ bräuchte, und da gibt es auch Probleme.
Ich habe es mit allen möglichen Casting-Versuchen probiert, komme aber auf keinen grünen ZWeig.
Was jemand da eine Hilfe?
(Ich benütze die stabile Version Laz 9.30 - FPC 6.0)
Herzlichen Dank!
P. Nikolaus