none
關於自訂active X控制項(.OCX)的timer問題(VB6) RRS feed

  • 一般討論

  • 大家好:

       小弟的程式裡大概有四到五頁的表單,每頁裡面有大概10~12個不等的active x控制項

    而每個active X控制項裡面都有一個timer,interval的設定值皆為1000。

    而timer裡面主要處裡的程式是去呼叫另外一個引用的程式抓值回來。

    問題來了,假若程式架在XP底下時,跑得很順且每個控制項抓值回來都很即時。

    但是換再win7 32位元或是 server 2003底下時,每個控制項幾乎是卡死無法動作,

    就算在每個控制項內加上Doevents後狀況是有改善,但也只有到沒卡死那麼嚴重,回傳速度也是非常慢。

    另外也試過把timer的interval數值錯開,但是效果似乎也是不彰

    所以想請益一下各位是否有過類似的經驗或是知道如何處裡這樣的情況

    2011年5月16日 上午 09:28

所有回覆

  • Are the Win7 and Win2003 Dual Core?

    I found many people are also reporting that Dual Core making the timer cannot work.

     


    大家一齊探討、學習和研究,謝謝!
    Microsoft MVP, Microsoft Community Star(TW & HK), MCT,
    MCSD, MCAD, MCSE+I, MCDBA, MCDST, MCSA, MCTS, MCITP, MCPD
    2011年5月19日 上午 02:53
  • 感謝回覆,系統確實是在win7(X86)跟server2003下以及使用雙核心以上規格的電腦會有這樣的問題,

    不過不確定單核心的電腦會不會有這樣的問題,可能稍晚測試後才知道結果

    請問有其他的解決方法嗎??

    P.S OCX控制項內的timer在呼叫一個引用的執行檔,該執行檔是透過DDE介面傳輸,

    當我表單只拉出一個控制項時,數量一多便會有變慢卡死的狀態產生。

     

    2011年5月23日 上午 06:51