共用方式為


以混合模式進行偵錯 (C#、C++、Visual Basic)

下列各程序描述如何啟用同時對受控程式碼和機器碼的偵錯,這也稱為「混合模式偵錯」。 有兩種混合模式偵錯案例:

  • 可呼叫 DLL 的應用程式是以機器碼所撰寫,而且 DLL 為受控程式碼。

  • 可呼叫 DLL 的應用程式是以受控程式碼所撰寫,而且 DLL 為機器碼。 如需逐步引導您完成此案例的教學課程,請參閱對受控程式碼和機器碼進行偵錯

您可以在呼叫應用程式專案的 [屬性] 頁面中同時啟用受控和原生偵錯工具。 原生與受控應用程式之間的設定不同。

如果您沒有呼叫應用程式專案的存取權,則可以從 DLL 專案對 DLL 進行偵錯。 您不需要使用混合模式來對 DLL 專案進行偵錯。 如需詳細資訊,請參閱如何從 DLL 專案進行偵錯 \(機器翻譯\)。

注意

根據 Visual Studio 設定或版本,您看到的對話方塊和命令可能會與本文中的對話方塊和命令不同。 若要變更您的設定,請選擇 [工具] > [匯入和匯出設定]。 如需詳細資訊,請參閱重設所有設定

啟用原生呼叫應用程式的混合模式偵錯

  1. 在 [方案總管] 中,選取 C++ 專案,並按一下 [屬性] 圖示,然後按 Alt+Enter,或按一下滑鼠右鍵並選擇 [屬性]

  2. <專案>屬性頁面對話方塊中,展開設定屬性,然後選取偵錯

  3. 偵錯工具類型設定為混合自動

  4. 選取確定

    Enable mixed mode debugging in C++

啟用受控呼叫應用程式的混合模式偵錯

  1. 在 [方案總管] 中,選取 C# 或 Visual Basic 專案,並選取 [屬性] 圖示,然後按 Alt+Enter,或按一下滑鼠右鍵並選擇 [屬性]

  2. 在 [方案總管] 中,選取 C# 或 Visual Basic 專案節點,然後選取 [屬性] 圖示,或以滑鼠右鍵按一下專案節點,然後選取選取 [屬性]

  3. 在屬性中啟用機器碼偵錯。

    針對 C#,在左窗格中,依序選取 [偵錯]、[開啟偵錯啟動設定檔 UI] 和 [啟用機器碼偵錯] 核取方塊,然後關閉 [屬性] 頁面以儲存變更。 Enable mixed mode debugging in C#

    針對 Visual Basic,在左窗格中,依序選取 [偵錯] 和 [啟用機器碼偵錯] 核取方塊,然後關閉 [屬性] 頁面以儲存變更。

    Enable mixed mode debugging in Visual Basic

    在左窗格中選取 [偵錯],選取 [啟用機器碼偵錯] 核取方塊,然後關閉屬性頁以儲存變更。

    Enable mixed mode debugging

    注意

    針對 Visual Studio 2017 和 Visual Studio 2019 中的 .NET Core 應用程式,您必須使用 launchSettings.json 檔案來啟用混合模式偵錯,而不是使用專案屬性。