Interfejs Debugger3
Debugger3Służy do interrogate i manipulować nimi Państwa debugera, a program debugowany.Debugger3zastępuje Debugger2 i Debugger interfejsów.
Przestrzeń nazw: EnvDTE90
Zestaw: EnvDTE90 (w EnvDTE90.dll)
Składnia
'Deklaracja
<GuidAttribute("87DFC8DA-67B4-4954-BB89-6A277A50BAFC")> _
Public Interface Debugger3 _
Inherits Debugger2
[GuidAttribute("87DFC8DA-67B4-4954-BB89-6A277A50BAFC")]
public interface Debugger3 : Debugger2
[GuidAttribute(L"87DFC8DA-67B4-4954-BB89-6A277A50BAFC")]
public interface class Debugger3 : Debugger2
[<GuidAttribute("87DFC8DA-67B4-4954-BB89-6A277A50BAFC")>]
type Debugger3 =
interface
interface Debugger2
end
public interface Debugger3 extends Debugger2
Typ Debugger3 uwidacznia następujące elementy członkowskie.
Właściwości
Nazwa | Opis | |
---|---|---|
AllBreakpointsLastHit | Zwraca kolekcję związany punkty przerwania, które ostatnio były jednocześnie trafień. | |
BreakpointLastHit | Pobiera ostatni hit przerwania. | |
Breakpoints | Zwraca kolekcję punkty przerwania. | |
CurrentMode | Pobiera bieżący tryb debugera w kontekście IDE. | |
CurrentProcess | Zwraca lub ustawia aktywny proces. | |
CurrentProgram | Ustawia lub zwraca aktywnego programu. | |
CurrentStackFrame | Zwraca lub ustawia bieżący ramek stosu. | |
CurrentThread | Zwraca lub ustawia bieżący wątek debugowany. | |
DebuggedProcesses | Pobiera listę procesów, które są debugowany. | |
DTE | Pobiera obiekt rozszerzalności najwyższego poziomu. | |
ExceptionGroups | Pobiera ustawienia wyjątek dla debugera.Dla każdego wyjątku ustawienia te określają, czy narzędzie debugger daje kod możliwość obsługi wyjątków przed wykonaniem podziały debugera. | |
ForceContinue | Zwraca lub ustawia wartość, która określa, czy debugera podziały wierszy, czy będzie kontynuowane po tracepoint lub przerwania kończy wykonywanie makra.Zachowanie domyślne jest ustawiony przez użytkownika w oknie dialogowym, gdy tworzone jest tracepoint lub przerwania.Właociwooć tę można zmienić domyślne zachowanie. | |
HexDisplayMode | Zwraca lub ustawia wartość wskazującą, czy wyrażenia są dane wyjściowe w formacie szesnastkowym lub dziesiętnym. | |
HexInputMode | Zwraca lub ustawia wartość wskazującą, czy wyrażenia są oceniane w formacie szesnastkowym lub dziesiętnym. | |
Languages | Pobiera listę języków obsługiwanych przez narzędzie debugger. | |
LastBreakReason | Pobiera ostatni powodem, dla którego program zostało przerwane.Jeśli program jest uruchomiony, to zwraca DBG_REASON_NONE. | |
LocalProcesses | Pobiera listę procesów, że aktualnie uruchomionych na tym komputerze. | |
OnlyLoadSymbolsManually | Pobiera wartość, która określa, czy symbole są ładowane, ręcznie lub automatycznie.Użytkownik programu Visual Studio można określić to ustawienie w Opcje okno dialogowe.Aby uzyskać więcej informacji o tym, jak ustawić tę wartość w ramach programu Visual Studio, zobacz [OBSOLETE] Porady: określanie lokalizacji symboli i zachowania przy ładowaniu. | |
Parent | Zwraca obiekt nadrzędny natychmiastowe z Debugger3 obiektu (DTE2). | |
SymbolCachePath | Zwraca ciąg zawierający ścieżkę do pamięci podręcznej symbole używane przez program Visual Studio, podczas pobierania symboli z serwera symboli.Można określić ścieżki pamięci podręcznej symbole w Opcje okno dialogowe.Aby uzyskać więcej informacji, zobacz [OBSOLETE] Porady: korzystanie z serwera symboli. | |
SymbolPath | Zwraca ciąg zawierający ścieżki do.PDB symbol pliki, które są używane przez program Visual Studio do debugowania.Użytkownik programu Visual Studio można określić ścieżki symboli w Opcje okno dialogowe.Aby uzyskać więcej informacji, zobacz [OBSOLETE] Porady: określanie lokalizacji symboli i zachowania przy ładowaniu. | |
SymbolPathState | Pobiera ciąg, który reprezentuje stan wszystkich ścieżek symbol.PDB symbol pliki, które są używane przez program Visual Studio do debugowania. | |
Transports | Zwraca kolekcję obsługiwanych transporty debugowania. |
Początek
Metody
Nazwa | Opis | |
---|---|---|
Break | Powoduje, że dany proces wstrzymać jego wykonanie, dzięki czemu można analizować jego bieżący stan. | |
DetachAll | Odłączenie od wszystkie programy dołączone. | |
ExecuteStatement | Wykonuje instrukcję.Jeśli TreatAsExpression jest flaga true, następnie ciąg jest interpretowana jako wyrażenie i dane wyjściowe są wysyłane do Okno polecenia. | |
GetExpression | Wynikiem wyrażenia opartego na bieżącej klatce stosu.Jeśli wyrażenie można analizować, ale nie są oceniane, obiekt jest zwracany, ale nie zawiera prawidłowej wartości. | |
GetExpression2 | Wynikiem wyrażenia opartego na bieżącej klatce stosu.Jeśli wyrażenie można analizować, ale nie są oceniane, obiekt jest zwracany, ale nie zawiera prawidłowej wartości.Ta funkcja składowa jest podobny do GetExpression , ale z dodatkowych parametrów typu Boolean, które można ustawić na wartość true, aby wskazać, że wyrażenie jest oceniane jako oświadczenie. | |
GetProcesses | ||
Go | Rozpoczyna wykonywanie programu od bieżącej instrukcji. | |
RunToCursor | Uruchamia program z bieżącej pozycji kursora pliku źródłowego. | |
SetNextStatement | Ustawia następnej instrukcji, które mają być wykonane na podstawie pozycji kursora w bieżącym pliku źródłowego. | |
SetSymbolSettings | Określa różne ustawienia.PDB symbole używane przez program Visual Studio do debugowania i wymusza ponowne załadowanie wszystkich symboli. | |
StepInto | Kroki do następnego wywołania funkcji, jeśli jest to możliwe. | |
StepOut | Kroki z bieżącą funkcję. | |
StepOver | Kroki przez następne wywołanie funkcji. | |
Stop | Zatrzymuje debugowania i kończy lub odłączenie od wszystkich procesów dołączonych. | |
TerminateAll | Kończy wszystkie aktualnie uruchomionych procesów debugowania. | |
WriteMinidump |
Początek
Uwagi
Debuger jest dostępna za pośrednictwem DTE2 obiektu poprzez jego Debugger właściwości, jak pokazano w poniższym przykładzie.Jeden obiekt debugera jest dostępna dla każdego wystąpienia środowiska interaktywne programowania (IDE).
Przykłady
Imports System
Imports EnvDTE
Imports EnvDTE90
Imports EnvDTE90
Imports System.Diagnostics
Public Module Module1
'This function returns true if the debugger is actively debugging.
Function IsDebugging() As Boolean
Dim debugger As EnvDTE90.Debugger3
debugger = DTE.Debugger
If (debugger Is Nothing) Then
MsgBox("Debugger doesn't exist! Fatal error.")
IsDebugging = false
Else
IsDebugging = (debugger.CurrentMode <> _
dbgDebugMode.dbgDesignMode)
End If
End Function
End Module
// The following C++ program can be run from the command line.
// It detects whether an instance of Visual Studio is currently
// running,and if so, prints a message stating whether its debugger
// is actively debugging.
#include <stdio.h>
#import "dte90.olb" raw_interfaces_only named_guids
using namespace EnvDTE90;
int main(void)
{
int nRet = 0;
CoInitialize(NULL);
IUnknownPtr pUnk;
GetActiveObject(CLSID_DTE, NULL, &pUnk);
if (pUnk == NULL) {
printf ("No instance of Visual Studio is running.\n");
}
else {
_DTEPtr pDTE = pUnk;
if (pDTE) {
DebuggerPtr pDebugger;
if (SUCCEEDED(pDTE->get_Debugger(&pDebugger3)) &&
pDebugger3
!= NULL){
dbgDebugMode mode;
if (SUCCEEDED(pDebugger3->get_CurrentMode(&mode))) {
if (mode != dbgDesignMode) {
printf("Debugger is active.\n");
nRet = 1;
}
else {
printf("Debugger is not active.\n");
}
}
}
}
}
CoUninitialize();
return nRet;
}