我在c#.Net 4.5中編寫了一個COM控件,這個COM控件使用第三方dll與USB設備進行通信。COM函數在VBscript上失敗,但在Win64上不能VB6
在Windows 7 32bit上,VBScript和VB6應用程序都可以100%工作。在Windows 7 64位上,調用使用USB設備的第三方dll函數時VBScript失敗。
例外情況是:「System.AccessViolationException」消息:「試圖讀取或寫入受保護的內存,這通常表示其他內存已損壞。」
我不明白的是,相同的COM控件(和相同的USB驅動程序)從VB6應用程序實例化,但不是從VBScript中工作。
我在運行VB6應用程序和VBScript時使用進程監視器查看了加載的程序集和註冊表訪問,但我看不到任何不尋常的東西。
任何關於我可以排除故障或測試的建議?
VB6始終是32位我以爲,作爲64位與否,它的32位運行的結果。 – BugFinder
是的,除非* op *實際上是指VBA。即使不是這樣,我認爲這個問題需要更多的細節,至少要展示已經嘗試過的東西,提出問題的相關工作示例,錯誤代碼等。 – acelent
嘗試將其作爲'「c:\ windows \ syswow64 \ cscript.exe「myScript.vbs」 –