私のコンピューターでは NGen に不満があり、何が問題なのかを深く理解する方法が見つかりません。
起動するたびに、ngen は次のメッセージをログに記録します。
.NET ランタイム最適化サービス (clr_optimization_v2.0.50727_32) - サービスが一時的なエラーの制限に達しました。シャットダウンします。Service Manager から返された最後のエラー: 0x8000ffff。
コマンドラインで最適化サービスを開始しようとすると、同じエラーが再度ログに記録されます。
ngen サービスを開始し、すぐにキューを一時停止することができました (次のように 2 行のバッチ ファイルを作成することによって)。
net start clr_optimization_v2.0.50727_32
ngen キューの一時停止
だから今、次のようにさまざまなステータスレベルでアイテムを実行して、キューをクリアしようとしました:
ngen executequeueditems 3 /nologo /verbose
しかし、結果は常に次のとおりです。
壊滅的な障害 (HRESULT からの例外: 0x8000FFFF (E_UNEXPECTED))
...途中でVisual Studio 2008をアンインストール/再インストールしました。SQLサーバー2005をアンインストールし、「システムファイルチェッカー」を実行しました:sfc /scannow
アイデアが不足しており、ngen の専門家からの助けが大好きです。
「これらの壊滅的な障害の原因は何ですか?」などの情報を入手するにはどうすればよいですか? ( /verbose オプションを使用しても、検出される情報の量は増えないことに注意してください。「生成されるキューにあるファイルは何ですか?」 -- それらのファイルの一部を削除したり、特定のファイルに問題を突き止めたりすることはできますか? ..
.net Framework 2.0 は vista であり、オペレーティング システムの保護された部分であるため、アンインストールと再インストールは簡単ではありません。
更新:ここで提供されているアドバイスも試しました(最初の返信で言及されています)-しかし、同じ壊滅的な失敗メッセージが表示されます。
C:\Windows\Microsoft.NET\Framework\v2.0.50727>ngen executequeueditems /nologo 致命的なエラー (HRESULT からの例外: 0x8000FFFF (E_UNEXPECTED))