Udostępnij za pośrednictwem


Debugowanie DLL projektów

Następujące szablony: tworzenie bibliotek DLL:

  • (C++, C# i Visual Basic) Biblioteka klas

  • (C++, C# i Visual Basic): biblioteki formantu Windows Forms

    Debugowanie Biblioteka formantów systemu Windows jest podobne do debugowania projektu biblioteki klas.W większości przypadków będzie wywoływać sterowania systemu Windows z innego projektu.Podczas debugowania wywołujący projektu można wkraczać do kodu formantu Windows, ustawianie punktów przerwania i wykonywać innych operacji debugowania.Aby uzyskać więcej informacji, zobacz Kontroli Windows Forms.

  • (C# i Visual Basic): Biblioteka formantów sieci Web

    Aby uzyskać więcej informacji, zobacz Biblioteka formantów sieci Web (kod zarządzany).

  • (C++): formant ActiveX MFC i MFC inteligentne urządzenie formantu ActiveX

    Formanty ActiveX są formanty, które można pobrać z Internetu na komputerze klienckim i wyświetlane i aktywować na stronach sieci Web.

    Debugowanie formantów ActiveX jest podobne do debugowania innych rodzajów kontrolek, ponieważ nie mogą być uruchamiane jako autonomiczne, ale musi być osadzony na stronie HTML w sieci Web.Aby uzyskać więcej informacji, zobacz Jak: Debug formantu ActiveX.

  • (C++): MFC inteligentne urządzenie biblioteki DLL

    Aby uzyskać więcej informacji, zobacz Techniki debugowania MFC.

Ta sekcja zawiera również informacje na następujące tematy:

Ten temat zawiera następujące sekcje, które zapewniają rozważania na temat sposobu przygotowania do debugowania biblioteki klas:

  • Tworzenie wersji do debugowania

  • Debugowanie w trybie mieszanym

  • Zmienianie domyślnej konfiguracji

  • Sposoby debugowania biblioteki DLL

  • Aplikacja telefonicznej

  • Formanty na stronie sieci Web

  • Bezpośrednim

Tworzenie wersji do debugowania

Bez względu na sposób uruchamiania debugowania upewnij się, że najpierw zbudować w wersji biblioteki DLL i upewnij się, że wersja debugowania jest w miejscu, gdzie aplikacja oczekuje go znaleźć.To może wydawać się oczywiste, ale pamięta tego kroku, aplikacja może znaleźć różnych wersji biblioteki DLL i go załadować.Program będzie uruchomić, gdy się zastanawiać, dlaczego nigdy nie został trafiony Twój punkt przerwania.Podczas debugowania, można sprawdzić, które biblioteki DLL programu został załadowany przez otwarcie debugera modułów okna.Modułów okno zawiera listę każdej biblioteki DLL lub EXE załadowanych w procesie debugowania.Aby uzyskać więcej informacji, zobacz Jak: używanie okna modułów.

Dla debugera dołączyć do kodu w języku C++, kod muszą emitować DebuggableAttribute.Można dodać tego kodu automatycznie łącząc się z /ASSEMBLYDEBUG opcję.

Debugowanie w trybie mieszanym

Aplikacji wywołującej, który wywołuje biblioteki DLL można napisać kod zarządzany lub kodu macierzystego.Jeśli chcesz debugować zarówno biblioteki DLL zarządzane jest wywoływana przez kod macierzysty, zarządzane i macierzystych debugery zarówno należy włączyć.Można wybrać w <Project>Stron właściwości lub oknie dialogowym.Jak to zrobić, zależy od tego, czy rozpocząć debugowanie z projektu DLL lub wywołujący projektu aplikacji.Aby uzyskać więcej informacji, zobacz Jak: debugowanie w trybie mieszanym.

Zmienianie domyślnej konfiguracji

Podczas tworzenia projektu aplikacji konsoli z szablonu projektu, Visual Studio automatycznie tworzy wymagane ustawienia konfiguracje Debug i Release.W razie potrzeby można zmienić te ustawienia.For more information, see Ustawienia projektu dla konfiguracji debugowanie C++, Ustawienia projektu dla konfiguracji C# debugowania, Ustawienia projektu dla języka Visual Basic debugowania konfiguracji, and Jak: Set Debug i Release konfiguracje.

Sposoby debugowania biblioteki DLL

Każdy z projektów w tej sekcji tworzy bibliotekę DLL.Biblioteka DLL nie można uruchomić bezpośrednio; musi ona zostać wywołana przez aplikację, zwykle EXE.Aby uzyskać więcej informacji, zobacz Tworzenie i zarządzanie nimi projektów systemu Visual C++.Aplikacja wywołująca może dopasować dowolny z następujących kryteriów:

  • Aplikacji utworzonej w innym projekcie, w tym samym Visual Studio roztworu zawierającego bibliotekę klas.

  • Stosowania istniejących już wdrożone na komputerze z badań lub produkcji.

  • Znajdujące się w sieci Web i uzyskać dostęp za pomocą adresu URL.

  • Aplikacji sieci Web zawiera stronę sieci Web, który osadza biblioteki DLL.

ms164704.collapse_all(pl-pl,VS.110).gifDebugowanie aplikacji telefonicznych

Do debugowania biblioteki DLL, uruchomić debugowanie aplikacji wywołującej, zwykle albo EXE lub aplikacji sieci Web.Debugowanie go na wiele sposobów.

  • Jeśli projekt aplikacji wywołującej, można otworzyć projektu i rozpoczęcia realizacji z debugowania menu.Aby uzyskać więcej informacji, zobacz Jak: rozpoczęcia realizacji.

  • Jeżeli aplikacji wywołującej program istniejący już wdrożone na komputerze z badań lub produkcji jest i działa już można dołączyć do niego.Tej metody należy użyć, jeśli biblioteka DLL jest obsługiwany przez program Internet Explorer formant lub formantu na stronie sieci Web.Aby uzyskać więcej informacji, zobacz Jak: dołączanie do procesu uruchomionego.

  • Można go debugowania z projektu biblioteki DLL.Aby uzyskać więcej informacji, zobacz Jak: debugowania z projektu biblioteki DLL.

  • Można debugować go z Visual Studionatychmiastowe okna.W przypadku natychmiastowe okno odgrywa rolę aplikacji.

Przed rozpoczęciem debugowania aplikacji wywołującej, zwykle będzie chcesz ustawić punkt przerwania w bibliotece klasy.Aby uzyskać więcej informacji, zobacz Breakpoints and Tracepoints.Po wybraniu punkt przerwania można przechodzić przez kod, przestrzegając działania w każdym wierszu, dopóki wyizolować problem.Aby uzyskać więcej informacji, zobacz [NIB] Omówienie wykonywania kodu krok po kroku.

ms164704.collapse_all(pl-pl,VS.110).gifFormanty na stronie sieci Web

Debugowanie formantu strony sieci Web, należy utworzyć ASP.NET strony, który osadza go, jeśli takie strony już nie istnieje.Punkty przerwania są następnie umieścić w kodzie strony sieci Web, a także kod kontroli.Następnie wywołać stronę sieci Web z Visual Studio.

Przed rozpoczęciem debugowania aplikacji wywołującej, zwykle można ustawić punktu przerwania w bibliotece DLL.Po wybraniu punkt przerwania można przechodzić przez kod, przestrzegając działania w każdym wierszu, dopóki wyizolować problem.Aby uzyskać więcej informacji, zobacz Breakpoints and Tracepoints i [NIB] Omówienie wykonywania kodu krok po kroku.

ms164704.collapse_all(pl-pl,VS.110).gifBezpośrednim

Bez konieczności aplikacji wywołującej można ocenić funkcji lub metody w bibliotece DLL.Czy jest debugowanie w czasie projektowania i używać natychmiastowe okna.Debugowanie w ten sposób, wykonaj następujące kroki podczas projektu DLL dalsze jest otwarty:

  1. Otwórz debuger natychmiastowe okna.

  2. Aby przetestować metodę o nazwie Test w klasie Class1, Utwórz wystąpienie obiektu typu Class1 , wpisując następujący kod C# w oknie bezpośrednim.Ten kod zarządzany działa dla języka Visual Basic i C++, ze zmianami odpowiedniej składni:

        Class1 obj = new Class1();
    

    W języku C# wszystkie nazwy muszą być w pełni kwalifikowana.Ponadto wszelkie metody lub zmienne musi być w kontekście sesji debugowania i bieżącego zakresu.

  3. Zakładając, że Test przyjmuje jedną int parametr, oceny Test za pomocą natychmiastowe okna:

       ?obj.Test(10)
    

    Wynik zostanie wydrukowany w natychmiastowe okna.

  4. Można kontynuować debugowania Test przez umieszczenie punktu przerwania wewnątrz niego i następnie ponownie oceny funkcji:

       ?obj.Test(10);
    

    Punkt przerwania zostanie hit i będzie można krokowo Test.Po realizacji opuścił Test, debuger będzie ponownie w trybie projektowania.

Zobacz też

Informacje

Ustawienia projektu dla konfiguracji debugowanie C++

Koncepcje

Ustawienia projektu dla konfiguracji C# debugowania

Ustawienia projektu dla języka Visual Basic debugowania konfiguracji

Debuger zabezpieczeń

Inne zasoby

Debugowanie kodu zarządzanego

Przygotowanie debugowania: Visual C++ projektu typów

Przygotowanie debugowania: C#, F# i typy projektów Visual Basic