Skip to content

Commit f0b5c05

Browse files
committed
Clarify mixed mode debugging settings for .NET and .NET Framework, add zone pivots
1 parent f3f5c57 commit f0b5c05

File tree

1 file changed

+34
-1
lines changed

1 file changed

+34
-1
lines changed

docs/debugger/how-to-debug-in-mixed-mode.md

Lines changed: 34 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: Debug in Mixed Mode (managed and native code)
33
description: Enable mixed-mode debugging (managed and native code together) in Visual Studio with the property pages of the calling app's project.
4-
ms.date: 09/18/2024
4+
ms.date: 3/17/2025
55
ms.topic: how-to
66
dev_langs:
77
- CSharp
@@ -16,6 +16,7 @@ author: mikejo5000
1616
ms.author: mikejo
1717
manager: mijacobs
1818
ms.subservice: debug-diagnostics
19+
zone_pivot_groups: programming-languages-set-two
1920

2021
#customer intent: As a developer, I want to enable mixed-mode debugging in Visual Studio, so I can use managed and native code together for C#, C++, or Visual Basic.
2122
---
@@ -35,6 +36,7 @@ If you don't have access to a calling app's project, you can debug the DLL from
3536
> [!NOTE]
3637
> The dialogs and commands described in this article might differ from your experience, depending on your Visual Studio settings or edition. To change your settings, select **Tools** > **Import and Export Settings**. For more information, see [Reset all settings](../ide/personalizing-the-visual-studio-ide.md#reset-all-settings).
3738
39+
::: zone pivot="programming-language-cpp"
3840
## Enable mixed-mode for native calling app (C++)
3941

4042
To enable mixed-mode debugging for a native calling app in C++, follow these steps:
@@ -48,7 +50,9 @@ To enable mixed-mode debugging for a native calling app in C++, follow these ste
4850
:::image type="content" source="../debugger/media/dbg-mixed-mode-from-native.png" border="false" alt-text="Screenshot that shows how to enable mixed mode debugging for a C++ project in Visual Studio.":::
4951

5052
1. To apply the property change, select **OK**.
53+
::: zone-end
5154

55+
::: zone pivot="programming-language-dotnet"
5256
## Enable mixed-mode for managed calling app (C# or Visual Basic)
5357

5458
To enable mixed-mode debugging for a managed calling app in C# or Visual Basic, follow these steps:
@@ -73,6 +77,34 @@ To enable mixed-mode debugging for a managed calling app in C# or Visual Basic,
7377

7478
1. To apply the property change, close the **Launch Profiles** dialog and the **Properties** pane.
7579

80+
::: moniker-end
81+
::: moniker range="<=vs-2019"
82+
83+
1. On the left menu, select **Debug**.
84+
85+
1. In the **Debugger engines** section, select the **Enable native code debugging** property:
86+
87+
:::image type="content" source="../debugger/media/mixed-mode-enable-native-code-debugging.png" border="false" alt-text="Screenshot that shows how to enable mixed mode debugging for a C# or Visual Basic project in Visual Studio 2019.":::
88+
89+
1. To apply the property change, close the **Properties** pane.
90+
91+
> [!NOTE]
92+
> For a .NET Core app in Visual Studio 2017 and Visual Studio 2019, you must use the *launchSettings.json* file instead of the project properties to enable mixed-mode debugging.
93+
94+
::: moniker-end
95+
::: zone-end
96+
97+
::: zone pivot="programming-language-dotnetf"
98+
## Enable mixed-mode for managed calling app (C# or Visual Basic)
99+
100+
To enable mixed-mode debugging for a managed calling app in C# or Visual Basic, follow these steps:
101+
102+
1. In Visual Studio **Solution Explorer**, right-click the C# or Visual Basic project and select **Properties**, or use the Alt + Enter keyboard shortcut. The **Properties** pane opens.
103+
104+
1. In the **Properties** pane, enable mixed-mode debugging by setting the following property:
105+
106+
::: moniker range=">=vs-2022"
107+
76108
**.NET Framework code**
77109

78110
If you're using .NET Framework code, which has no debug launch profile, follow these steps:
@@ -100,6 +132,7 @@ To enable mixed-mode debugging for a managed calling app in C# or Visual Basic,
100132
> For a .NET Core app in Visual Studio 2017 and Visual Studio 2019, you must use the *launchSettings.json* file instead of the project properties to enable mixed-mode debugging.
101133
102134
::: moniker-end
135+
::: zone-end
103136

104137
## Related content
105138

0 commit comments

Comments
 (0)