啓用地址級調試的設置

#271、啓用地址級調試的設置的作用是什麼?

原文鏈接:What the Enable Address-Level Debugging option does

操作步驟:
菜單:工具+選項+調試+常規,有個"啓用地址級調試"項,如果啓用該項,將會得到另外三個調試工具:“反彙編”窗口、“寄存器”窗口和地址斷點。

如果不選中此項,就不會有。

評論:啓用地址級調試非常有用,可特別針對一些深層次的bug,容易找到問題所在。


#272、如何自動顯示或不顯示反彙編

原文鏈接:How to show the disassembly automatically or not at all

操作步驟:
菜單:工具+選項+調試+常規,在選中“啓動地址級調試”後,選項“源代碼不可用時顯示反彙編”變成可用的。

如果此項沒有選中,你將看到如下對話框(當前位置的代碼是不可用的,是否自動啓動反彙編?)

在對話框中選中“自動顯示反彙編”項,就會顯示代碼的反彙編內容。

評論:對很熟悉反彙編的人來說,這個功能很有用,對於不熟悉的,看反彙編就好比看天書了。


#273、用斷點篩選器中斷正確的進程

原文鏈接:You can use Breakpoint Filters to break the right process

操作步驟:
菜單:工具+選項+調試+常規,選中“啓用斷點篩選器”項。

對於多個實例運行在一個應用上時,如果想中斷其中一個實例的進程,就可以用點點篩選器。 右鍵單擊斷點,選擇“篩選器”

在篩選器對話框,你可以確定什麼是中斷,比如,指定進程的ID

你可以在斷點窗口來驗證斷點篩選器

評論:這個功能對多進程的調試非常有用。


#274、不啓用異常助手

原文鏈接:You can disable the Exception Assistant

操作步驟:
如果你單擊一個異常,異常助手對話框就會彈出。如下圖所示,就是一個“分母爲零”的異常發生後出現異常助手。

如果你不想看見異常助手,可以如下操作:
菜單:工具+選項+調試+常規,不選中“啓用異常助手”項。

如果沒有選中該項,單擊斷點時,你將獲得一個典型的未處理的異常信息。

評論:我覺得還是啓用的好,對解決異常錯誤很有幫助。


#275、從異常助手裏檢查異常對象

原文鏈接: You can examine the exception object from the exception assistant

操作步驟:
在異常助手對話框中,有個“查看詳情”的鏈接

單擊這個鏈接,將打開“查看詳情”的對話框,顯示有關異常內容。

評論:查看異常的詳情,對處理異常提供非常有用的提示。


#276、在異常助手裏單擊複製異常詳情

原文鏈接: you can copy the exception details with one click from the exception assistant

操作步驟:
在異常助手對話框中,有個“複製異常詳情到剪貼板”的鏈接,單擊此鏈接,可以把異常的詳情複製到剪貼板。

評論:複製有關異常的內容,對測試人員記錄異常信息很有用。


#277、在未處理的異常上調用堆棧時,做了什麼?

原文鏈接:What unwinding the call stack on unhandled exceptions does

操作步驟:
菜單:工具+選項+調試+常規,選中“啓用異常助手”項,在此項下面的“未處理的異常上調用堆棧”項變得可用。

如果沒有啓動該項,意味着不會自動調用堆棧。啓用該項,如下所示異常的變量出現在局部變量窗口。

評論:此功能可以很詳細查看有關堆棧中的異常變量。


(注:有關#278-#287 在作者的博客缺失,原因不明。)

#288、顯示外部代碼

原文鏈接:How to show External code

操作步驟:
調試狀態,在“調用堆棧”窗口,單擊右鍵,選擇“顯示外部代碼”,則會顯示非用戶的代碼(系統代碼)即外部代碼

評論:顯示外部代碼,可以從net 底層系統來調試程序了。說不定你也許可以找到net框架的bug呢.


#289、什麼是“僅你的代碼”?

原文鏈接:what is just your code

操作步驟:

菜單:工具+選項+調試+常規,有個“啓用‘僅我的代碼’”項。
那麼那些是“你的”代碼呢?

1、你的代碼被優化過。
2、你的代碼沒有符號
3、你的代碼沒有標記DebuggerNonUserCodeAttribute

例如在一個解決方案裏有兩個項目:ClassLibrary1 and ConsoleApplication1,ConsoleApplication1調用ClassLibrary1 的類在控制檯顯示一個“hello world”,在生成的時候比較ClassLibrary1爲優化,在ConsoleApplication1中封裝Console.WriteLine方法地方設置一個斷點,然後單步調試,到達斷點時候,發現在斷點處中斷了,繼續按F11,並沒有進入方法內部,而是跳到了下一行。

評論:只調試我的代碼,讓你的更專注。


#290、在生成的時候,優化你的代碼

原文鏈接:How to optimize your code for a build

操作步驟:
針對c#,在項目屬性中,選擇“生成”標籤頁選中“優化代碼”。

菜單:工具+選項+調試+常規,不選中“在模塊加載中禁止jit優化’”項。

隨着優化代碼選項被選中和禁止模塊加載jit優化,在上篇例子中的ClassLibrary1被優化了,從而不再是你的代碼了。

評論:調試的選項非常豐富,需要學習的東東很多喲。

 

轉自:http://www.cnblogs.com/xjb/archive/2009/01/14/visual-studio-2008-tip-day-28.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章