經試驗可以在dll工程文件中加入以下語句 :
Application.Initialize;
if Application.Handle = 0 then
begin
Application.CreateHandle;
end;
Application.Run;
解決線程中使用Synchronize 假死的問題,或者在線程中直接使用SendMessage替代Synchronize同步。
原因在於若工程文件是DLL而不是EXE的話,Application默認不創建窗口句柄,因此Synchronize向Application發送消息根本無法響應,手動創建句柄,並讓其進入消息循環狀態可以解決