2012-01-04 54 views
0

我在我的vb6應用程序中使用WinAPI,SetTimer和KillTimer(它是傳統項目)。 SetTimer確實返回了正確的事件ID,但實際的回調沒有在set internval處被調用。SetTimer無法在我的vb6應用程序中工作

.... 
lngID = SetTimer(0, 0, 3000, AddressOf UpdateCallBack) 

Public Sub UpdateCallBack(ByVal hWnd As Long, ByVal uMsg As Long, ByVal idEvent As Long, ByVal dwTime As Long) 
...... 

UpdateCallBack有時候會叫分鐘後OT甚至小時後。我聽說定時器是一個低優先級的消息,當沒有其他消息要處理時就處理它。 有沒有辦法讓郵件得到處理? 如果SetTimer無法使用,我可以使用什麼?

感謝

回答

1

是應用做的時候別的回調預期? 只要線程正在泵送消息,您應該在發生火災後立即收到回調。

如果應用程序繁忙,則需要通過調用DoEvents來運行消息循環。

相關問題