Debugowanie w trybie mieszanym (C#, C++, Visual Basic)
W tym artykule opisano sposób włączania debugowania dla kodu zarządzanego i natywnego, znanego jako debugowanie w trybie mieszanym. Istnieją dwa scenariusze debugowania w trybie mieszanym:
Aplikacja, która wywołuje bibliotekę DLL, jest napisana w kodzie natywnym, a biblioteka DLL jest zarządzana.
Aplikacja, która wywołuje bibliotekę DLL, jest napisana w kodzie zarządzanym, a biblioteka DLL jest w kodzie natywnym. Aby zapoznać się z samouczkiem, który przeprowadzi Cię przez ten scenariusz, zobacz Debugowanie kodu zarządzanego i natywnego.
Można włączyć zarówno zarządzane, jak i natywne debugery na stronach właściwości projektu aplikacji wywołującej. Ustawienia różnią się w przypadku aplikacji natywnych i zarządzanych.
Jeśli nie masz dostępu do projektu aplikacji wywołującej, możesz debugować bibliotekę DLL z projektu DLL. Do debugowania nie jest potrzebny tryb mieszany. Potrzebny jest tylko projekt DLL. Aby uzyskać więcej informacji, zobacz Jak debugować z projektu DLL.
Notatka
Okna dialogowe i polecenia opisane w tym artykule mogą różnić się od Twoich doświadczeń, w zależności od ustawień lub edycji Visual Studio. Aby zmienić ustawienia, wybierz Tools>Import and Export Settings (Ustawienia importu i eksportu). Aby uzyskać więcej informacji, zobacz Resetuj wszystkie ustawienia.
Włączanie trybu mieszanego dla natywnej aplikacji wywołującej (C++)
Aby włączyć debugowanie w trybie mieszanym dla natywnej aplikacji wywołującej w języku C++, wykonaj następujące kroki:
W programie Visual Studio Eksplorator rozwiązańkliknij prawym przyciskiem myszy projekt języka C++ i wybierz Właściwościlub użyj skrótu klawiaturowego Alt + Enter. Okno dialogowe stron właściwości projektu <> zostanie otwarte.
W oknie dialogowym rozwiń sekcję Właściwości konfiguracji i wybierz kartę Debugowanie.
Na karcie Debugging wybierz właściwość Typ debugera i użyj rozwijanej listy, aby wybrać opcję Auto lub Mixed. Jeśli istnieje wiele opcji mieszanych, takich jak .NET Core i .NET Framework, wybierz najlepszą opcję dla twojej konfiguracji.
Aby zastosować zmianę właściwości, wybierz pozycję OK.
Włączanie trybu mieszanego dla zarządzanej aplikacji wywołującej (C# lub Visual Basic)
Aby włączyć debugowanie w trybie mieszanym dla zarządzanej aplikacji wywołującej w języku C# lub Visual Basic, wykonaj następujące kroki:
W eksploratorze rozwiązań programu Visual Studio kliknij prawym przyciskiem myszy projekt C# lub Visual Basic i wybierz Właściwościlub użyj skrótu klawiaturowego Alt + Enter. Okienko Właściwości otwiera się.
W okienku właściwości włącz debugowanie w trybie mieszanym, ustawiając następującą właściwość:
.NET kod
W menu po lewej stronie wybierz Debug.
W sekcji Ogólne wybierz link Otwórz interfejs użytkownika profili uruchamiania debugowania. Zostanie otwarte okno dialogowe Profile uruchamiania .
W oknie dialogowym przewiń stronę, aby zlokalizować sekcję Włącz debugowanie kodu natywnego.
Wybierz właściwość Włącz debugowanie dla kodu zarządzanego i natywnego razem, nazywane również debugowaniem w trybie mieszanym.
Aby zastosować zmianę właściwości, zamknij okno dialogowe Profile uruchamiania oraz okienko właściwości .
kod .NET Framework
Jeśli używasz kodu programu .NET Framework, który nie ma profilu uruchamiania debugowania, wykonaj następujące kroki:
W menu po lewej stronie wybierz pozycję Debug.
W sekcji silników debugera wybierz właściwość Włącz debugowanie kodu natywnego:
Aby zastosować zmianę właściwości, zamknij okienko właściwości .
W menu po lewej stronie wybierz pozycję Debug.
W sekcji silników/debugerów wybierz właściwość Włącz debugowanie kodu natywnego:
Aby zastosować zmianę właściwości, zamknij okienko właściwości .
Notatka
W przypadku aplikacji .NET Core w programach Visual Studio 2017 i Visual Studio 2019 należy użyć pliku launchSettings.json zamiast właściwości projektu, aby umożliwić debugowanie w trybie mieszanym.