2009-09-14 168 views

回答

12

不要添加.dll文件,儘量只.loadby sos mscorwks

+2

這仍然給出錯誤消息無法找到我的模塊'mscorwks.dll' – MaxJ

+0

這仍然給出錯誤消息無法找到我的模塊'mscorwks.dll' – burzhuy

2

如果您有.NET框架的目錄(如C:\ WINDOWS \ Microsoft.NET \框架\ V2.0.50727)在你的路徑,你可以只是使用

.load sos 
18

我也遇到過這個問題,原來是因爲調試器在加載CLR之前打入應用程序。在我可以做任何事情之前,我不得不讓應用程序進一步運行。

這樣做在WinDbg中可能會有所幫助:

sxe ld:mscorlib 
g 
(... breaks again ...) 
.loadby sos mscorwks 

的 'SXE LD:..' 停止在模塊加載。

由於西斯托提到,如果你正在調試的dotnet 4級的應用程序,你需要用

.loadby sos clr 
+0

是的,這是我的問題。它打破得太早。我不必自己加載mscorlib,我只是讓應用程序進一步(直到它碰到'Console.ReadLine()',在'.loadby sos mscorwks'之前寫'g'。 –

107

如果您正在調試一個.NET 4.0應用程序以替換最後一行,則需要使用以下而不是mscorwks

.loadby sos clr

可用於.NET 4.0的命令Here is a good overview。請享用!!

+11

+1 - 不是回答這個問題,但它使我的一天。 –

3

還要確保你有正確的位數 - 試圖在64位windbg中做這個,而調試32位應用程序會給你同樣的錯誤。