支援的程式碼變更
[編輯後繼續] 會處理大多數的程式碼變更。但在程式執行期間,無法套用某些變更。若要套用這些變更,您必須停止執行,並建置新版的程式碼。
偵錯工作階段期間不能套用下列 C/C++ 變更:
大部分全域或靜態資料的變更。
不是建置於本機而是從另一台電腦複製而來的可執行檔之變更。
會影響物件 (例如類別的資料成員) 配置的資料型別變更。
加入超過 64K 位元組的新程式碼或資料。
在指令指標之前的某一點加入需要建構函式的變數。
會影響需要執行階段初始化的程式碼變更。
在某些執行個體中加入例外狀況處理常式。
資源檔的變更。
唯讀檔中的程式碼變更。
不含對應 PDB 檔之程式碼的變更。
不含目的檔 (Object File) 的程式碼變更。
如果您進行其中一項變更,並嘗試套用程式碼變更,[輸出] 視窗中會出現一則錯誤或警告訊息。
- 編輯後繼續不會更新靜態程式庫。如果您變更靜態程式庫,執行仍會使用舊版本繼續進行,不會發出任何警告。
不支援的案例
C/C++ 的編輯後繼續無法在下列偵錯案例:
偵錯 Windows 市集應用程式或元件。
在 Windows 98 上偵錯。
混合模式 (原生/Managed) 偵錯。
Java 語言偵錯。
SQL 偵錯
偵錯傾印檔案。
在未選取 [發生未處理的例外狀況時回溯呼叫堆疊] 選項的情況下,於發生未處理的例外狀況後編輯程式碼。
使用 [附加至] 來偵錯應用程式,而不是按一下 [偵錯] 功能表上的 [啟動] 來執行應用程式。
偵錯最佳化程式碼
當目標是 64 位元應用程式時,偵錯 Managed 或機器碼。如果要使用 [編輯後繼續],就必須將目標設定為 x86 (專案[屬性], [編譯] 索引標籤,將 [進階編譯器] 設定為)。
由於建置錯誤以致新版本建置失敗之後,偵錯舊版的程式碼。