Einzelnen Beitrag anzeigen

EWeiss
(Gast)

n/a Beiträge
 
#44

Re: Dynamisches Array oder Klasse als Array auslegen

  Alt 26. Sep 2006, 08:50
Zitat von marabu:
Ich habe noch mal ganz zum Anfang zurück geblättert und festgestellt, dass csH in winampDSPinfo ursprünglich als TRTLCriticalSection verbaut war - also nix mit Pointer. Warum bist du davon abgekommen? Du kannst das ruhig so beibehalten.

Grüße, marabu
weil beim stopen des Plugin

Delphi-Quellcode:
// Stopt eingeladenes Winamp DSP Plugin (aber entlädt es nicht)
Procedure BASS_WADSP_Stop(plugin : HDSP); stdcall;
var
    winampDsp : WINAMPPLUGINPROPDSP;

begin
  winampDsp := GetDSP(plugin);
   if winampDsp <> nil then
     begin
      if winampDsp^.pDSP <> nil then
      begin
         BASS_WADSP_ChannelRemoveDSP(plugin);
         EnterCriticalSection(winampDsp^.csH);
         winampDsp^.pDSP^.Quit(winampDsp^.pDSP);
         winampDsp^.pDSP := nil;
         winampDsp^.module := -1;
         LeaveCriticalSection(winampDsp^.csH);
      end;
   end;
end;
die anwendung sich verabschiedet.
Das gleiche auch bei allen anderen Functionen welche EnterCriticalSection in anspruch nehmen.
Auch sieht im CCode jede zeile so aus.
Code:
EnterCriticalSection(&winampDsp->csH);
Das '&' ist kein Operator = @ wäre dann ein pointer.

Also alles wieder zurück ? Kein Problem.

grüß
  Mit Zitat antworten Zitat