/debug (C# 編譯器選項)

/debug 選項會讓編譯器產生偵錯資訊,並將其置於輸出檔中。

/debug[+ | <U>-</U>]
/debug:{<U>full</U> | pdbonly}

引數

  • + | -
    指定 + (或者只是 /debug) 會讓編譯器產生偵錯資訊,並將該資訊置於程式資料庫 (.pdb 檔案) 中。 指定 - (如果沒有指定 /debug 則生效) 就不會建立偵錯資訊。

  • full | pdbonly
    指定編譯器所產生的偵錯資訊類型。 此 full 引數 (它會在您沒有指定 /debug:pdbonly 時生效) 會啟用附加偵錯工具到正在執行的程式。 指定 pdbonly 可以讓程式在偵錯工具中啟動時進行原始程式碼偵錯,但是如果執行的程式是附加到偵錯工具,則只會顯示組合語言。

備註

請使用這個選項來建立偵錯組建。 如果未指定 /debug/debug+/debug:full,您將無法對程式的輸出檔進行偵錯。

請注意,如果您使用 /debug:full,會影響 JIT 最佳化程式碼的速度與大小,並且對使用 /debug:full 的程式碼品質造成些許影響。 建議您使用 /debug:pdbonly 或不使用 PDB 檔來產生發行程式碼。

注意事項注意事項

/debug:pdbonly/debug:full 之間的其中一項差異在於,編譯器使用 /debug:full 發出 DebuggableAttribute,用來告知 JIT 編譯器已可取得偵錯資訊。 因此,如果您使用 /debug:full 且程式碼中的 DebuggableAttribute 設定為 false,便會發生這個錯誤。

如需如何設定應用程式偵錯效能的相關資訊,請參閱使映像偵錯更容易

若要變更 .pdb 檔案的位置,請參閱 /pdb (C# 編譯器選項)

在 Visual Studio 開發環境中設定這個編譯器選項

  1. 開啟專案的 [屬性] 頁面。

  2. 按一下 [建置] 屬性頁。

  3. 按一下 [進階] 按鈕。

  4. 修改 [偵錯資訊] 屬性。

如需如何以程式設計方式設定這個編譯器選項的詳細資訊,請參閱 DebugSymbols

範例

將偵錯資訊放入輸出檔 app.pdb:

csc /debug /pdb:app.pdb test.cs

請參閱

其他資源

C# 編譯器選項

專案屬性 (Visual Studio)