我一直試圖解決此問題,但現在仍未成功。當代碼移動到IIS時,CoCreateInstance(「CLSID」)掛起
場景: 1)我們在asp.net MVC中開發了一個web應用程序,並且這又調用了Winforms exe來繪製和打印文檔。
2)Winforms exe使用第三方DLL來繪製和打印文檔。當代碼從2015年VS運行,但
3)一切工作正常時,當COM對象是使用初始化代碼被髮布到IIS,當該exe被調用,但在舞臺
(ThirdPartyControl) ThirdPartyControl.CoCreateInstance(「{value}」)代碼只是掛起而不會引發異常。
您的問題的一部分有點含糊不清。例如,「當代碼從VS 2015運行時,一切正常」 - 是Winforms exe或MVC web應用程序中的代碼?同樣,它不清楚你的MVC應用程序如何「調用」Winform exe。我們可以猜到「呼叫」可能意味着什麼,但我們可能猜錯了。當你提出一個結構良好的問題時,你可以提高獲得有用答案的機會。您可能會在[問]和[mcve]中找到有用的建議。 –
對不起大家,道歉的困惑。上面提到的代碼打破了EXE和mvc應用程序通過System.Diagnostics.Process類調用exe。 – user1002446
如果我理解這一點,Winform exe在Visual Studio中執行時會正常工作,但不會在MVC應用程序啓動時運行。您可以嘗試從Visual Studio執行MVC應用程序,並將調試器配置爲混合模式。這應該允許您將調試器附加到Winform exe啓動後。這可能會告訴你一些事情。 –