Zitat:
Weil der Thread noch läuft.
Delphi-Quellcode:
if Assigned(SessionThread) then
begin
SessionThread.EndThread;
Sleep(100);
SessionThread.Free;
end;
Der läuft nicht bzw. wird beendet kann er aber nicht weil mein Thread beim _Released in dem Fall wie getestet E_NOTIMPL zurückgibt
und der RefCounter nicht 0 ist.
Wenn ich die Rückgaben nicht auswerte funktioniert alles.
Aber dann hab ich halt die Warnung.
Muss mal schau'n wie ich das jetzt mache.
EDIT:
Es sollte ja egal sein wo ich die Funktionen implementiere ob in TCustomSessionThread oder TSessionThread dieser erbt ja von TCustomSessionThread.
Delphi-Quellcode:
TCustomSessionThread = class(TThread)
function QueryInterface(const IID: TGUID; out Obj): HResult; stdcall;
function _AddRef: integer; stdcall;
function _Release: integer; stdcall;
end;
TSessionThread = class(TCustomSessionThread, IAudioSessionNotification)
gruss