簡體   English   中英

在調試模式下在Visual Studio 2008中編輯代碼

[英]Editing code in Visual Studio 2008 in debug mode

我很想知道是否有一種方法可以在C#VS 2008中編輯代碼,當它遇到斷點並且我正在通過代碼...我可以修改代碼(例如變量中的值或者如果我的話stepthrough line即將命中if語句...我可以修改if語句....等等)? 到目前為止,我必須停止運行VS,修改代碼,然后點擊F5並等待斷點再次被擊中。

當斷點命中,我正在通過代碼,我嘗試編輯代碼時,我收到一條消息“當調試器已經連接到正在運行的被調試代碼的進程被優化時,不允許更改或者跑步。“

我知道為什么在Debug版本中禁用Edit + Continue的原因只有幾個。 首先是64位操作系統,E + C僅適用於32位代碼。 使用Project + Properties,Build選項卡,Platform Target = x86進行修復。

它也是一個可能已被關閉的選項。 工具+選項,調試,編輯和繼續,啟用復選框。

如果這沒有幫助,請告訴我們更多關於您正在調試的代碼類型,啟動項目時選擇的項目模板,如何使調試器中斷以及從“調用堆棧”窗口復制堆棧跟蹤。

是的你可以。
這稱為編輯並繼續
請注意,它有一些限制

編輯 :您需要切換到調試版本。

  1. 停止運行您的應用。
  2. 轉到工具>選項>調試>編輯並繼續
  3. 禁用“啟用編輯並繼續”。

要在中斷模式下修改變量的值或設置屬性,請轉到立即窗口,設置新值,然后單擊返回,例如

strValue = "newValue"
Calendar1.Enabled = true

要檢索值,您只需將其打印到窗口ee即可

?strValue
?Calendar1.Enabled

以下答案對我有用:

http://whyiamright.wordpress.com/2007/12/20/aspnet-edit-and-continue-in-visual-studio-2005/

第二點說 - project-properties-web->啟用編輯並繼續。

而已。

回答這個問題:

我可以修改代碼(例如變量中的值,或者如果我的步驟行即將命中if語句......我可以修改if語句等等)嗎?

您不能直接將新值彈入變量,但您可以這樣做:

  1. 設置斷點
  2. 當該斷點被擊中時,單擊左邊距中的箭頭並將其向上拖動到上一行
  3. 現在您可以添加代碼來更改環境(例如,您可以將變量設置為新值,添加/刪除集合中的項目等)

查看有關啟用編輯和繼續的其他答案 - 特別是,請確保您處於調試模式。

為了解決這個問題,我做了以下......

BUILD> CONFIGURATION MANAGER

活動解決方案配置:DEBUG項目上下文配置:DEBUG

然后工具>選項>調試>編輯和繼續確保選中編輯和繼續

然后BUILD> CLEAN SOLUTION然后BUILD> REBUILD SOLUTION

然后啟動調試,然后暫停,然后您的代碼應該是可編輯的

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM