私はコンソールアプリケーションへのProcess.Start()呼び出しを持つasp.net mvc 4アプリケーションを持っています(c++で書かれています)。
問題は、コンソール アプリケーションが asp.net アプリケーションから適切に実行されないことです (サイトから画像を生成し、画像はすべて白です)。
コンソール アプリケーションから同じ呼び出しを使用すると、完全に機能します。
私が見たように、それは特権の問題であるはずです。
ASP.NET が同じユーザーから実行されているかどうかはよくわかりませんが、私のユーザー アカウント (管理者) で実行されていることがわかりました。
私が試したこと:
process.StartInfo.UseShellExecute = true/false.
管理者ユーザーの process.StartInfo.UserName と Password。
C:\Users\MyUser\Documents\IISExpress\config\applicationhost.config にある IIS 構成ファイルを次のように編集します。
<applicationPoolDefaults managedRuntimeLoader="v4.0" > <processModel/> </applicationPoolDefaults>
に:
<applicationPoolDefaults managedRuntimeLoader="v4.0" > <processModel userName="administrator username" password="administrator password"/> </applicationPoolDefaults>
そのため、匿名の要求がプロセスの ID で実行され、プロセスに特権がない場合、明示的なユーザーが匿名認証に使用されます。ここから撮影
助けてくれてありがとう!