Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#47

Re: Dynamisches Array oder Klasse als Array auslegen

  Alt 27. Sep 2006, 07:06
Zitat von marabu:
Moin Emil,

wo geschieht denn die falsche Zuweisung?

Gruß
Guten Morgen Marabu
Bin langsam am verzweifeln..
Finde die richtigen verbindungen irgendwie nicht.

EnterCriticalSection(winampDsp^.csH); Funktioniert generell nicht.
Entweder bleibt die Anwendung hier hängen > läuft einfach nicht weiter
Oder es gibt ein AV.

Delphi-Quellcode:
// Befreit alle DSP Plugin Resourcen und die Bass-Library
Procedure BASS_WADSP_Free(); stdcall;
Var
  a: DWORD;

Begin

   for a := 0 to winampDSPcounter do

   Begin

      winampDsp := winamp_DSP[a];
      if winampDsp <> nil then
      begin
         if winampDsp^.handle <> 0 then
            BASS_WADSP_Stop(winampDsp^.handle);
         // clear the slot
         winamp_DSP[a] := nil;
         Destroy_Winamp_Window(winampDsp);
         FreeLibrary(winampDsp^.hDll);
//         DeleteCriticalSection(winampDsp^.csH);
         FreeMem(winampDsp);
      end;
   end;
   BASS_WADSP_PluginInfoFree();
end;
Einladen der Plugins funktioniert.
Das beenden nicht.
Dieser Counter winampDSPcounter ist immer 0.
dadurch werden mir falsche Werte von winamp_DSP[a] an winampDsp übergeben.
winampDsp ist zwar dann nicht NIL aber die Daten stimmen mit dem Plugin auch nicht überein.
Incrementiere ich den Counter so das er bei 1 anfängt stimmen die werte aber bei FreeMem gibt es auch einen AV.

Weiß nicht weiter habe alle erdenklichen kombinationen versucht.
Name vom Archiv ist falsch geschrieben ... mach dir nix draus.

GRüße
  Mit Zitat antworten Zitat