Einzelnen Beitrag anzeigen

Wishmaster

Registriert seit: 14. Sep 2002
Ort: Steinbach, MB, Canada
301 Beiträge
 
Delphi XE2 Architect
 
#5

Re: en kleines Problem mit Thread

  Alt 16. Feb 2006, 11:22
Hi

Fielen Dank für deine Hilfe, ich hatte es in einem Vorherigen versuch auch so ähnlich gemacht. Das Problem lag daran das ich den Code einfach durchlaufen lies ohne zu Überprüfen ob der Channel wirklich Frei ist. Anscheinen kann bass.dll den Channel nicht Schnell genug freigeben, bzw. die Verbindung zum Internet zu trennen.
Wen ich zbw. en WMA Stream (mms://) abspiele und dann versuch den zu stoppen oder das Programm zu schließen friert das Programm für ca 5 Sekunden ein was bei Mp3, ACC+, … ! nicht der fahl ist.



Vorher
Delphi-Quellcode:
    BASS_StreamFree(Channel);
    BASS_MusicFree(Channel);


     Channel:= BASS_StreamCreateURL(PChar(FFilename), 0, Flag, @DownloadProc,0);
  if Channel = 0 then
     Channel:= BASS_FLAC_StreamCreateURL(PChar(FFilename), 0, Flag, @DownloadProc,)

Nachher
Delphi-Quellcode:
  while (not Self.Terminated) and (not Self.Suspended) do
    begin

  if BASS_StreamFree(Channel) or (Channel = 0) then
     begin
       Channel:= BASS_StreamCreateURL(PChar(FFilename), 0, Flag, @DownloadProc,0);
    if Channel = 0 then
       Channel:= BASS_FLAC_StreamCreateURL(PChar(FFilename), 0, Flag, @DownloadProc,)
   end;


   if (Channel > 0) then
      break;

end;
  Mit Zitat antworten Zitat