我有Windows Media編碼器附帶的腳本的變體。我通過WSH啓動它,並將它設置爲STDIN,STDOUT和STDERR。有沒有辦法在VBS中執行非阻塞IO或以某種方式向COM事件發出信號?
該腳本開始編碼並最終在DO循環中等待,檢查編碼對象的狀態,以便腳本知道如果編碼停止時退出。 (內部循環僅打印一段時間,並休眠約2秒)。
要乾淨地退出,我想指示腳本停止編碼,這將允許它從循環中刪除並清理。
我沒有(或者一定想)在我們啓動腳本的應用程序中實現了一個COM對象 - 否則,我只是觸發一個事件。 (我會重新考慮如果這比我想在C++中做的更容易)
我想通過STDIN發送一個字符退出,但問題在於WScript.stdin塊的所有方法。 是否有任何非阻塞的方式來從標準輸入讀取或某種方式來檢查字符?
是否有可能在VBS中做一個線程?據我所知,你只能推銷其他程序。
我認爲當你開始談論線程和異步I/O時,你已經過去了VBSCRIPT。 – 2009-07-23 12:15:36
同意。我可能在未來的版本中簡單地將COM移到C++端。 – 2009-07-23 15:05:01