Ok ik ben dus bezig met het schrijven van een plugin voor winamp. Dat lukt allemaal wel, maar nu heb ik een thread nodig die wat download. Dus ik ben bezig gegaan, heb een classe gemaakt die erft van TThread. Dat is allemaal geen probleem. Het starten lukt, de thread download wat ie moet downloaden, maar hij komt nooit bij de onterminate event aan. Nu het rare van alles, als ik na het aanmaken van de thread een showmessage doe, werkt het allemaal perfect.
Code:
nou vraag ik mij af, wat doet showmessage waardoor de code opeens wel werkt...
Code:
Delphi:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
| function Init : Integer; begin Result := 0; try WinampVer := SendMessage(Plugin.hwndParent, WM_WA_IPC, 0, IPC_GETVERSION); Timer := TTimer.Create(nil); Timer.Interval := 1000; Timer.OnTimer := EventHandlers.OnTimer; ShowMessage('start'); DownloadThread := TDownloadThread.Create('http://www.google.nl'); DownloadThread.OnTerminate := EventHandlers.OnThreadDone; ShowMessage('eind'); //snap except result := 1; end; end; Procedure TEventHandlers.OnThreadDone(Sender: TObject); begin DownloadThread := nil; ShowMessage('Poof'); end; |
nou vraag ik mij af, wat doet showmessage waardoor de code opeens wel werkt...