Udostępnij za pośrednictwem


Debugowanie z projektu DLL w programie Visual Studio (C#, C++, Visual Basic, F#)

Jednym ze sposobów debugowania projektu DLL jest określenie aplikacji wywołującej we właściwościach projektu DLL. Następnie możesz rozpocząć debugowanie z samego projektu DLL. Aby ta metoda działała, aplikacja musi wywołać tę samą bibliotekę DLL w tej samej lokalizacji co skonfigurowana. Jeśli aplikacja znajdzie i załaduje inną wersję biblioteki DLL, ta wersja nie będzie zawierać punktów przerwania. Aby uzyskać informacje o innych metodach debugowania bibliotek DLL, zobacz Debugowanie projektów DLL.

Jeśli aplikacja zarządzana wywołuje natywną bibliotekę DLL lub aplikacja natywna wywołuje zarządzaną bibliotekę DLL, możesz debugować zarówno bibliotekę DLL, jak i aplikację wywołującą. Aby uzyskać więcej informacji, zobacz Instrukcje: debugowanie w trybie mieszanym.

Projekty natywne i zarządzane biblioteki DLL mają różne ustawienia umożliwiające określenie wywoływanych aplikacji.

Określanie aplikacji wywołującej w natywnym projekcie DLL

  1. Wybierz projekt DLL języka C++ w Eksplorator rozwiązań. Wybierz ikonę Właściwości, naciśnij klawisz Alt+Enter lub kliknij prawym przyciskiem myszy i wybierz polecenie Właściwości.

  2. <W oknie dialogowym Strony właściwości projektu> upewnij się, że w górnej części okna ustawiono wartość Debuguj pole Konfiguracja.

  3. Wybierz pozycję Debugowanie właściwości>konfiguracji.

  4. Na liście Debuger do uruchomienia wybierz pozycję Lokalny debuger systemu Windows lub Zdalny debuger systemu Windows.

  5. W polu Polecenie lub Zdalne polecenie dodaj w pełni kwalifikowaną ścieżkę i nazwę pliku aplikacji wywołującej, taką jak plik .exe .

    Debug Properties window

  6. Dodaj wszelkie niezbędne argumenty programu do pola Argumenty poleceń.

  7. Wybierz przycisk OK.

Określanie aplikacji wywołującej w projekcie DLL języka C# (.NET Core, .NET 5+)

  1. Wybierz projekt DLL języka C# lub Visual Basic w Eksplorator rozwiązań. Wybierz ikonę Właściwości, naciśnij klawisz Alt+Enter lub kliknij prawym przyciskiem myszy i wybierz polecenie Właściwości.

  2. Na karcie Debugowanie wybierz pozycję Otwórz interfejs użytkownika profilów uruchamiania debugowania.

  3. W oknie dialogowym Uruchamianie profilów wybierz ikonę Utwórz nowy profil , a następnie wybierz pozycję Wykonywalny.

    Screenshot of the UI to create a new debug profile.

  4. W nowym profilu w obszarze Wykonywalny przejdź do lokalizacji pliku wykonywalnego (plik exe ) i wybierz go.

  5. W oknie dialogowym Uruchamianie profilów zanotuj nazwę profilu domyślnego, a następnie wybierz go i usuń.

  6. Zmień nazwę nowego profilu na taką samą nazwę jak profil domyślny.

    Alternatywnie możesz ręcznie edytować plik launch Ustawienia.json, aby uzyskać ten sam wynik. Chcesz, aby pierwszy profil w pliku launch Ustawienia.json był zgodny z nazwą biblioteki klas i chcesz, aby został on wymieniony jako pierwszy w pliku.

Określanie aplikacji wywołującej w zarządzanym projekcie DLL

  1. Wybierz projekt DLL języka C# lub Visual Basic w Eksplorator rozwiązań. Wybierz ikonę Właściwości, naciśnij klawisz Alt+Enter lub kliknij prawym przyciskiem myszy i wybierz polecenie Właściwości.

  2. Upewnij się, że pole Konfiguracja w górnej części okna ma wartość Debuguj.

  3. W obszarze Akcja Rozpocznij:

    • W przypadku bibliotek DLL programu .NET Framework wybierz pozycję Uruchom program zewnętrzny i dodaj w pełni kwalifikowaną ścieżkę i nazwę aplikacji wywołującej.

    • Możesz też wybrać pozycję Uruchom przeglądarkę z adresem URL i wypełnić adres URL lokalnej aplikacji ASP.NET.

    • W przypadku bibliotek DLL platformy .NET Core w Visual Basic strona Właściwości debugowania jest inna. Wybierz pozycję Wykonywalny z listy rozwijanej Uruchamianie, a następnie dodaj w pełni kwalifikowaną ścieżkę i nazwę aplikacji wywołującej w polu Wykonywalny.
    • W przypadku bibliotek DLL platformy .NET Core strona Właściwości debugowania jest inna. Wybierz pozycję Wykonywalny z listy rozwijanej Uruchamianie, a następnie dodaj w pełni kwalifikowaną ścieżkę i nazwę aplikacji wywołującej w polu Wykonywalny.
  4. Dodaj wszelkie niezbędne argumenty wiersza polecenia w polu Argumenty wiersza polecenia lub Argumenty aplikacji.

    C# Debug Properties window

  5. Zapisz wybrane elementy za pomocą pliku>lub Ctrl+S, aby zapisać zmiany.

Debugowanie z projektu DLL

  1. Ustaw punkty przerwania w projekcie DLL.

  2. Kliknij prawym przyciskiem myszy projekt DLL i wybierz polecenie Ustaw jako projekt startowy.

  3. Upewnij się, że pole Konfiguracja rozwiązań ma wartość Debuguj. Naciśnij klawisz F5, kliknij zieloną strzałkę Start lub wybierz pozycję Debuguj>rozpocznij debugowanie.

Dodatkowe podpowiedzi:

  • Jeśli debugowanie nie osiągnie punktów przerwania, upewnij się, <że dane wyjściowe biblioteki DLL (domyślnie folder project>\Debug ) to lokalizacja wywoływana przez aplikację wywołującą.

  • Jeśli chcesz podzielić kod w zarządzanej aplikacji wywołującej z natywnej biblioteki DLL lub na odwrót, włącz debugowanie w trybie mieszanym.

  • W niektórych scenariuszach może być konieczne powiedzenie debugerowi, gdzie można znaleźć kod źródłowy. Aby uzyskać więcej informacji, zobacz Use the No Symbols Loaded/No Source Loaded pages (Używanie stron bez załadowanych symboli/bez załadowanych źródeł).