2009-02-07 116 views
7

NGen對我的電腦不滿意,我無法找到一種方式深入瞭解發生了什麼問題。需要幫助讓NGen重新回到工作狀態

每一次啓動後,NGEN記錄此消息:

.NET運行時優化服務 (clr_optimization_v2.0.50727_32) - 服務達到瞬時 錯誤的極限。將關閉。從服務管理器返回的最後一個錯誤 : 0x8000ffff。

而當我嘗試在命令行啓動優化服務時,我得到了同樣的錯誤再次記錄。

我設法開始NGEN服務,並立即暫停隊列(通過寫兩行的批處理文件,就像這樣:

NET START clr_optimization_v2.0.50727_32

NGEN隊列暫停

所以現在我試圖清除隊列,通過執行不同狀態級別的項目,如下所示:

NGEN executequeueditems 3/NOLOGO /冗長

但結果總是:

災難性故障(從 HRESULT異常:0x8000FFFF(E_UNEXPECTED))

。 ..我卸載/重新安裝Visual Studio 2008的方式。 我卸載了SQL Server 2005,並且運行了'系統文件檢查': sfc/scannow

缺乏想法,並會愛從ngen專家的幫助。

我如何獲得信息,如 「什麼原因導致這些災難性失敗?」 (請注意,/ verbose選項不會增加我找到的信息量 「隊列中將生成哪些文件?」 - 我可以刪除其中的某些文件,還是可以將某些文件文件...

卸載並重新安裝.NET Framework 2.0中是不容易的,因爲這是Vista和它的操作系統的一個保護

更新: 我也一直在嘗試,建議提供here(並在第一個回覆中提到) - 但我只是得到相同的災難性故障消息。

C:\ Windows \ Microsoft.NET \ Framework \ v2.0。50727> NGEN executequeueditems/NOLOGO 災難性故障(異常來自 HRESULT:0x8000FFFF(E_UNEXPECTED))

+1

我聞到一股OS在你未來的重新安裝.. – 2009-02-08 21:58:28

+0

這很爛。我有同樣的問題,安裝MVC ASP.net RC2 任何人都有解決固定ngen的? – 2009-03-06 03:09:05

+0

嗨哈里 - 菲爾哈克的描述在這裏可能會有所幫助。 http://haacked.com/archive/2009/03/05/troubleshooting-installers.aspx 我最終使用Orca.exe從MVC安裝程序中刪除ngen步驟。 – 2009-03-15 11:17:37

回答

1

this來自:

在.NET運行時優化服務 嘗試重試的彙編 組件,當它運行到它認爲是瞬態錯誤時 ; 實例包括RPC錯誤, 外的存儲器錯誤等。然而, 它已嘗試後編譯相同 組件20倍,並依然未能 這樣做,它輸出上述 消息並關閉。我看到你已經嘗試從你的機器上卸載.NET Framework 2.0並且 已經重新安裝它,但是你仍然有 這個錯誤。我猜測,嘗試 修復安裝不幫助 要麼。你可能會嘗試運行 「ngen.exe ExecuteQueuedItems」後跟 通過「ngen.exe更新」從 %WINDIR%\ Microsoft.NET \ Framework \ v2.0.50727 \? 這將試圖編譯所有 程序集還沒有 任何/最新的32位NGen圖像 同步沒有通過 優化服務。一旦 更新命令完成後,您能否再次嘗試啓動服務 並檢查 是否仍在系統日誌中獲取 相同的消息?如果 此問題不是特定於 服務,我希望您在命令行 輸出中也會看到 編譯錯誤。

+0

嗨鮑比。我更新了這個問題,提到當我嘗試這個時發生了什麼。 (它失敗了,但接管了256個字符來解釋;-)) – 2009-02-07 23:18:55

3

在回答這部分的質詢:「是什麼造成這些災難性故障 」

有兩個日誌文件,可以幫助回答這個問題:

C:\Windows\Microsoft.NET\Framework\v2.0.50727\ngen.log 
C:\Windows\Microsoft.NET\Framework\v2.0.50727\ngen_service.log 

(除了通常的應用程序日誌,雖然不太有用)

在回答:

「生成的隊列中有哪些文件是 ?」

通常的答案是,這可以通過運行可以看出:

ngen.exe display 

(雖然在我的情況下,它只返回

NGEN Roots:  
Catastrophic failure (Exception from HRESULT: 0x8000FFFF (E_UNEXPECTED)) 

2

我有同樣的問題(安裝Asp MVC 1.0)。 尋找我發現的答案Haacked Blog,其中一些原因已被解釋。 呆過試圖解決這2個小時,我非常沮喪,我已經使用

ngen /delete * 

它的工作。但我不知道,如果它不會讓小災;/

也許這將幫助..