Thema: Delphi Thread verursacht Fehler

Einzelnen Beitrag anzeigen

Lefko

Registriert seit: 31. Jul 2003
359 Beiträge
 
Delphi 6 Enterprise
 
#12

Re: Thread verursacht Fehler

  Alt 17. Nov 2003, 22:16
Zitat von choose:
@Lefko: Um es noch einmal zusammenzufassen. Die solltest den Thread Supended kreieren, und vorerst UniqueString verwenden. Außerdem empfiehlt es sich, den Aufruf des geerben Konstruktors als erste Anweisung in der überschriebenen Implementierung aufzurufen. Abschließend im Konstruktor dann Resume aufrufen.
Hi,
ich hab jetzt all die Tipps eingebaut, aber trotzdem kommt es zu einer AV!

hier der Text:

Delphi-Quellcode:
unit USoundThread;

interface

uses
  Classes, MMSystem;

type
  TSoundThread = class(TThread)
  private
    SoundPfad : string;
  protected
    procedure Execute; override;
  public
       { Public declarations }
    constructor Create(Pfad : string);
  end;

implementation

{ TSoundThread }

constructor TSoundThread.Create(Pfad : string);
begin
inherited Create(true);
UniqueString(Pfad); //Ab hier kommt die AV
SoundPfad := Pfad;
Resume;
//FreeOnTerminate := true;
end;

procedure TSoundThread.Execute;
begin
  { Place thread code here }
  sndPlaySound(PChar(SoundPfad), SND_ASYNC or SND_LOOP);
  //if terminated then break;
end;

end.
Was kann da noch zu Fehlern führen?!

MfG Lefko.
Johannes
-=[Nennst du meinen Namen, bin ich schon nicht mehr da]=-
  Mit Zitat antworten Zitat