Zitat von
marabu:
Die observierte Zeile in Bild-1 - muss es da nicht winamp_DSP^[a] heißen? Prüfe das mal.
Gruß, marabu
Delphi-Quellcode:
TDspPtrArray = array [0..0] of WINAMPPLUGINPROPDSP;
DspPtrArray = ^TDspPtrArray;
Winamp_DSP : DspPtrArray = nil;
Ist das gleiche wie im C++ code WinampDSP da wird kein pointer auf die Adresse gesetzt.
Habe es aber mal getestet ergebnis ist das gleiche(
AV)
Dein Code der letzte funktioniert 100 pro.
Denke es liegt nun daran das die adresse zum Modul nicht aufgelößt wird
da gibt es ein
AV.
Delphi-Quellcode:
// Returns the name of a loaded Winamp DSP plugin
function BASS_WADSP_GetName(plugin: HDSP): LPTSTR; stdcall;
Var
strRet: PChar;
winampDSP: WINAMPPLUGINPROPDSP;
begin
strRet := nil;
winampDsp := GetDSP(plugin);
if winampDsp <> nil then
begin
strRet := winampDsp^.pModule^.description;
end;
Result := strRet;
end;
Wie komme ich auf die Adresse des Moduls? ohne
AV
IN Load hat es so funktioniert
Delphi-Quellcode:
pGetMod : function : pointer; stdcall;
pGetMod := GetProcAddress(winampDsp^.hDll, 'winampDSPGetHeader2');
if pGetMod <> nil then
gruß