問題描述:為了在C#中執行js腳本,在一個目標平臺編譯為Any Cpu的.NET程式集中引用了MSScriptControl組件,在winform程式中,調用這個程式集中的執行js的方法,沒有任何問題。但是在windows服務中調用卻報錯,報錯信息如下: 在嘗試過很多方法之後仍然沒有解決,包括將MS ...
問題描述:為了在C#中執行js腳本,在一個目標平臺編譯為Any Cpu的.NET程式集中引用了MSScriptControl組件,在winform程式中,調用這個程式集中的執行js的方法,沒有任何問題。但是在windows服務中調用卻報錯,報錯信息如下:
在嘗試過很多方法之後仍然沒有解決,包括將MSScriptControl組件的引用屬性“嵌入互操作類型”設置為false,如圖所示:
這樣子修改之後,報另外一個錯誤:
解決方案:MSScriptControl組件是32位的,所以需要將程式集的目標平臺設置為X86平臺,才能使用。設置如圖: