Bis GetName funktioniert nun alles.
Mein neues problem ist nicht ganz so aufwendig denke ich!
Delphi-Quellcode:
procedure Destroy_Winamp_Window(winampDsp: WINAMPPLUGINPROPDSP); stdcall;
begin
EnterCriticalSection(winampDsp^.csH);
if winampDsp^.DSP_Window_Emu <> 0 then
DestroyWindow(winampDsp^.DSP_Window_Emu);
if winampDsp^.DSP_Atom_Emu <> 0 then
UnRegisterClass(PChar(WORD(winampDsp^.DSP_Atom_Emu)), Inst);
winampDsp^.DSP_Atom_Emu := 0;
winampDsp^.DSP_Window_Emu := 0;
LeaveCriticalSection(winampDsp^.csH);
end;
Im Original wird diese Zeile
EnterCriticalSection(winampDsp^.csH);
so dargestellt.
Code:
EnterCriticalSection(&winampDsp->csH);
Wäre übersetzt
EnterCriticalSection(@winampDsp^.csH);
So wie es oben ist gibt es einen
AV nehme ich die übersetzte zeile
bekomme ich die Meldung
Zitat:
[Pascal Error] BassWaDSP.pas(330): E2033 Types of actual and formal var parameters must be identical
Der Operator '@' müßte ja die adresse der Variablen zurückliefern so wie ich das verstanden habe
Ausgelegt ist sie in der Classe.
csH : RTL_CRITICAL_SECTION;
Was ist hier verkehrt das diese Meldung auftritt ?
Gruß