この問題を今すぐ解決しようとしていますが、まだ成功しています。コードをIISに移動したときにCoCreateInstance( "CLSID")がハングアップする
シナリオ: 1)私たちはasp.net MVCで開発されたWebアプリケーションを持っており、これはWinForms exeを呼び出してドキュメントを描画しています。
2)Winforms exeは、サードパーティのDLLを使用してドキュメントを描画し、印刷します。コードはVS 2015しかしから実行されたときに
3)すべてが正常に動作COMオブジェクトを使用して初期化されたときにコードをexeファイルが呼び出されるIIS、ではなく、ステージで公開されている場合
(ThirdPartyControl) ThirdPartyControl.CoCreateInstance( "{value}")コードはハングアップし、例外はスローされません。
あなたの質問の部分は少し曖昧です。たとえば、「すべてがVS 2015からコードを実行するときに問題なく動作します」 - 問題のコードはWinforms exeまたはMVC Webアプリケーションですか?同様に、あなたのMVCアプリケーションがWinform exeをどのように "呼び出す"かは明確ではありません。私たちは "呼び出し"が意味するかもしれないものを推測することができますが、間違っていると推測できます。あなたはよく形成された質問をするときに役に立つ答えを得る機会を増やします。あなたは[ask]と[mcve]の助言が役に立ちます。 –
申し訳ありませんが、混乱のためにお詫び申し上げます。上記のexeで壊れたコードとmvcアプリケーションはSystem.Diagnostics.Processクラス経由でEXEを呼び出します。 – user1002446
これを理解していれば、Winform exeはVisual Studio内で実行されたときに正しく動作しますが、MVCアプリケーションで起動されたときには正しく動作しません。 Visual StudioからMVCアプリケーションを実行すると、デバッガが混在モードに設定されている可能性があります。これは、起動後にWinform exeにデバッガを接続できるようにする必要があります。それはあなたに何かを伝えるかもしれない。 –