Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Gdy wszystko będzie gotowe do debugowania funkcji COM+ w składnikach programu Microsoft Visual C++, możesz skonfigurować projekt Visual C++ lub narzędzie administracyjne usługi składników w celu uruchomienia debugera. Jeśli używasz języka Visual C++, możesz debugować za pomocą klienta zdalnego przy użyciu protokołu OLE RPC i debugowania just in time (JIT). Jeśli nie możesz uruchomić klienta w debugerze lub jeśli klient jest uruchomiony na innym komputerze, możesz użyć com+ Uruchom w debugerze. Znajdziesz to w narzędziu administracyjnym usługi składników jako pole wyboru na karcie Zaawansowane aplikacji COM+ właściwości okna dialogowego.
Po zakończeniu debugowania należy zamknąć debugowane aplikacje COM+. Jeśli proces serwera pozostanie uruchomiony, może wystąpić błąd przy następnej próbie zbudowania biblioteki DLL, gdy istniejąca biblioteka DLL jest nadal załadowana do pamięci. Aby zamknąć aplikację COM+, kliknij prawym przyciskiem myszy aplikację w drzewie konsoli, a następnie kliknij Zamknij.
Notatka
Jeśli używasz transakcji, możesz również zwiększyć limit czasu transakcji, który domyślnie to 60 sekund. Można również określić wartość 0, co skutecznie określa nieskończony limit czasu transakcji. Za pomocą narzędzia administracyjnego usługi składników zmień ustawienie limitu czasu transakcji na karcie Opcje okna Właściwości komputera.
Debugowanie składników aplikacji serwera za pomocą języka Visual C++
Podczas debugowania aplikacji serwera COM+ można debugować wywołania zdalne, ładując zarówno klienta, jak i aplikację serwera do debugera. Za pomocą języka Visual C++można debugować zdalne wywołania składników za pomocą ustawień just in time (JIT) i OLE RPC. Ustawienie JIT powoduje, że skompilowany składnik uruchamia debuger visual C++, gdy wystąpi błąd; Ustawienie OLE RPC umożliwia debugerowi przejście od klienta do składnika podczas przechodzenia przez kod.
Po włączeniu tych funkcji możesz uruchomić klienta w debugerze. Gdy klient wykonuje wywołanie do Twojego składnika, debuger przejdzie do kodu składnika w procesie serwera, nawet jeśli serwer znajduje się na innym komputerze w sieci. W razie potrzeby sesja debugowania jest uruchamiana automatycznie na komputerze serwera. Podobnie, jednokrokowe przejście po instrukcji return w kodzie składnika przywróci debugowanie do następnej instrukcji w kodzie klienta.
Notatka
Możesz zapisać kilka kroków, korzystając z ustawienia COM+ Launch in debugger (Uruchamianie w debugerze). Dzięki temu można określić debuger Visual C++ (lub inny) bez konieczności wprowadzania specjalnych ustawień debugowania w środowisku Visual C++. Znajdziesz to w narzędziu administracyjnym Usługi składników jako pole wyboru na karcie Zaawansowane w oknie dialogowym Właściwości aplikacji COM+ . Aby uzyskać więcej informacji, zobacz "Debugowanie bez języka Visual C++" w tym temacie.
Gdy aplikacja COM+ zawierająca składnik jest aplikacją serwera, należy rozpocząć od zamknięcia aplikacji przy użyciu narzędzia administracyjnego usługi składników. W tym celu kliknij prawym przyciskiem myszy aplikację COM+ w drzewie konsoli, a następnie kliknij Zamknij.
Aby włączyć debugowanie RPC w programie Visual C++
W programie Visual C++, w menu Tools kliknij pozycję Options.
W oknie dialogowym Opcje na karcie Debug zaznacz pola wyboru debugowania OLE RPC i debugowania Just-In Time .
Kliknij przycisk OK.
Aby rozpocząć debugowanie, uruchom projekt klienta w debugerze.
Możesz również debugować składnik bez uruchamiania klienta w debugerze. W takim przypadku składnik musi uruchomić debuger samodzielnie. W tym celu projekt składnika musi określić plik wykonywalny dla sesji debugowania wraz z identyfikatorem aplikacji COM+.
Aby umożliwić składnikowi aplikacji serwera uruchamianie debugera Visual C++
W menu projektu kliknij pozycję Ustawienia.
W oknie dialogowym ustawienia projektu w oknie dialogowym Ustawienia dla wybierz pozycję debugowania Win32.
Na karcie Debug, w polu Kategoria, wybierz Ogólne.
W polu Wykonywalny dla sesji debugowania wprowadź w pełni kwalifikowaną ścieżkę dla Dllhost.exe, a następnie argument określający identyfikator aplikacji COM+ zawierającej składnik.
Notatka
Identyfikator aplikacji można znaleźć na karcie Ogólne w oknie dialogowym Właściwości aplikacji COM+, używając narzędzia administracyjnego Usługi składników. Oto przykład:
Notatka
C:\Winnt\System32\Dllhost.exe /ProcessID:{applicationID}
Kliknij przycisk OK.
Teraz można ustawić punkty przerwania, uruchomić debuger i rozpocząć wykonywanie wywołań do składnika.
Debugowanie składników aplikacji biblioteki za pomocą języka Visual C++
Aby debugować składniki w aplikacji biblioteki, należy skonfigurować projekt klienta, ponieważ proces klienta będzie hostować aplikację biblioteki.
Aby włączyć debugowanie aplikacji biblioteki za pomocą Visual C++
W programie Visual C++, w menu Project kliknij pozycję Ustawienia.
W oknie dialogowym ustawień projektu w oknie dialogowym Ustawienia dla kliknij pozycję Win32 Debugowanie.
Na karcie Debugowanie w kategorii kliknij dodatkowe biblioteki DLL.
Na liście modułów dodaj składnikowe biblioteki DLL w aplikacji biblioteki. Dzięki temu można ustawić punkty przerwania przed rzeczywistym załadowaniem biblioteki DLL.
Kliknij przycisk OK.
Debugowanie bez języka Visual C++
Niezależnie od tego, czy używasz języka Visual C++ do debugowania, możesz użyć ustawienia Launch in debugger w celu określenia debugera, w którym składniki powinny być uruchamiane.
Aby określić debuger w narzędziu administracyjnym Usług Składników
W drzewie konsoli wybierz aplikację biblioteki COM+ zawierającą składniki, które chcesz debugować.
Kliknij prawym przyciskiem myszy aplikację, a następnie kliknij właściwości .
W oknie dialogowym właściwości aplikacji kliknij kartę Zaawansowane.
W obszarze Debugowaniezaznacz pole wyboru Uruchom w debugerze.
W polu ścieżki debugera wpisz ścieżkę do debugera, którego chcesz użyć. Możesz również kliknąć przycisk Przeglądaj, aby zlokalizować debuger. Oto przykład: C:\Winnt\System32\Ntsd.exe.
Kliknij przycisk OK.
Tematy pokrewne