Zitat von
EWeiss:
Zitat von
marabu:
Wenn der Zugriff auf winampDsp^.hDll funktioniert, dann scheint der Zeiger winampDsp gesund zu sein. Was sagt denn der Debugger bei winampDsp^.pModule - ist der Zeiger eventuell nil? Hast du die Struktur irgendwo korrekt initialisiert?
Gruß, marabu
ja der Zeiger ist NIL
Deshalb meine Anmerkung wie ich die 'winampDsp^.pModule' Adresse auflösen kann.
Es siehst so aus das zum Modul der POinter fehlt.
PS: In VB braucht man diese ganze Pointer sache nur in seltenen fällen
Sorry wenn ich manchmal etwas dumm frage.
Werde es aber auf kurz oder lang begreifen.
Danke .. grüße
Ahhhhhh ... Erfolg
Dein Hinweis auf winampDsp^.hDll hat mich den code nochmal überprüfen lassen.
Es lag ganz einfach daran das unter Load BASS_WADSP_Load
Delphi-Quellcode:
end else
// Bei Fehler Winamp Fake Window beenden
Destroy_Winamp_Window(winampDsp);
end;
// Library freigeben
FreeLibrary(winampDsp^.hDll);
freigegeben wurde. Deshalb konnte 'winampDsp^.pModule' nicht mehr initialisiert werden weil NIL.
Da nach BASS_WADSP_GetName keine weitere Funktion zum einladen mehr benötigt wird
sollte ich diese Zeile 'FreeLibrary(winampDsp^.hDll)' wohl unter 'strRet := winampDsp^.pModule^.description;' setzen.
gruß
PS: Letzte feststellung war quatch
Zitat:
sollte ich diese Zeile 'FreeLibrary(winampDsp^.hDll)' wohl unter 'strRet := winampDsp^.pModule^.description;' setzen.
Habe einfach aus end; end else gemacht
So kann 'if pGetMod <> nil then' pGetMod die Library leeren wenn = NIL.