Interfaccia Debugger3
Debugger3 viene utilizzato per interrogare e modificare lo stato del debugger e del programma in fase di debug.Debugger3 sostituisce Debugger2 e Debugger interfacce.
Spazio dei nomi: EnvDTE90
Assembly: EnvDTE90 (in EnvDTE90.dll)
Sintassi
'Dichiarazione
<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
Il tipo Debugger3 espone i seguenti membri.
Proprietà
Nome | Descrizione | |
---|---|---|
AllBreakpointsLastHit | (Ereditato da Debugger2) | |
AllBreakpointsLastHit | Ottiene una raccolta di punti di interruzione associati contenuti contemporaneamente l'ultima riga eseguita. | |
BreakpointLastHit | (Ereditato da Debugger2) | |
BreakpointLastHit | ottiene l'ultimo passaggio punto di interruzione. | |
Breakpoints | (Ereditato da Debugger2) | |
Breakpoints | Ottiene una raccolta di punti di interruzione. | |
CurrentMode | (Ereditato da Debugger2) | |
CurrentMode | Ottiene la modalità corrente del debugger nel contesto dell'IDE. | |
CurrentProcess | (Ereditato da Debugger2) | |
CurrentProcess | Ottiene o imposta il processo attivo. | |
CurrentProgram | (Ereditato da Debugger2) | |
CurrentProgram | Imposta o restituisce il programma attivo. | |
CurrentStackFrame | (Ereditato da Debugger2) | |
CurrentStackFrame | ottiene o imposta lo stack frame corrente. | |
CurrentThread | (Ereditato da Debugger2) | |
CurrentThread | Ottiene o imposta il thread corrente in fase di debug. | |
DebuggedProcesses | (Ereditato da Debugger2) | |
DebuggedProcesses | Ottiene l'elenco dei processi nel debug. | |
DTE | (Ereditato da Debugger2) | |
DTE | Ottiene l'oggetto estensibilità di primo livello. | |
ExceptionGroups | Ottiene le impostazioni dell'eccezione per il debugger.Per ogni eccezione, queste impostazioni determinano se il debugger fornisce al codice una possibilità di gestire l'eccezione prima che il debugger interrompa l'esecuzione. | |
ForceContinue | Ottiene o imposta un valore che stabilisce se il debugger si interrompe o continua quando un punto di analisi o un punto di interruzione completa per eseguire una macro.Il comportamento predefinito è impostato dall'utente nella finestra di dialogo quando il punto di analisi o il punto di interruzione viene creato.questa proprietà può essere utilizzata per modificare il comportamento predefinito. | |
HexDisplayMode | (Ereditato da Debugger2) | |
HexDisplayMode | Ottiene o imposta un valore che indica se le espressioni vengono restituite in o in formato decimale. | |
HexInputMode | (Ereditato da Debugger2) | |
HexInputMode | Ottiene o imposta un valore che indica se le espressioni vengono valutate in o in formato decimale. | |
Languages | (Ereditato da Debugger2) | |
Languages | Ottiene un elenco dei linguaggi che il debugger supporta. | |
LastBreakReason | (Ereditato da Debugger2) | |
LastBreakReason | Ottiene l'ultima motivo per cui un programma è stato interrotto.Se il programma è in esecuzione restituisce DBG_REASON_NONE. | |
LocalProcesses | (Ereditato da Debugger2) | |
LocalProcesses | Ottiene l'elenco dei processi attualmente in esecuzione sul computer. | |
OnlyLoadSymbolsManually | Ottiene un valore che determina se i simboli caricati sono manualmente o automaticamente.L'utente di Visual Studio è possibile determinare questa impostazione in opzioni finestra di dialogo.Per ulteriori informazioni su come impostare questo valore all'interno di Visual Studio, vedere Procedura: specificare percorsi di simboli e comportamento di caricamento. | |
Parent | (Ereditato da Debugger2) | |
Parent | Ottiene l'oggetto padre immediato di Debugger3 oggetto (DTE2). | |
SymbolCachePath | Ottiene una stringa contenente il percorso alla cache dei simboli utilizzati da Visual Studio quando si scaricano i simboli da un server di simboli.È possibile specificare il percorso della cache dei simboli in opzioni finestra di dialogo.Per ulteriori informazioni, vedere Procedura: utilizzare un server di simboli. | |
SymbolPath | Ottiene una stringa contenente i percorsi dei file di simboli di .PDB utilizzati da Visual Studio per il debug.L'utente di Visual Studio è possibile specificare i percorsi di simboli in opzioni finestra di dialogo.Per ulteriori informazioni, vedere Procedura: specificare percorsi di simboli e comportamento di caricamento. | |
SymbolPathState | Ottiene una stringa che rappresenta lo stato di tutti i percorsi di simboli per i file di simboli di .PDB utilizzati da Visual Studio per il debug. | |
Transports | (Ereditato da Debugger2) | |
Transports | Ottiene una raccolta di trasporti supportati di debug. |
In alto
Metodi
Nome | Descrizione | |
---|---|---|
Break(Boolean) | (Ereditato da Debugger2) | |
Break(Boolean) | Determina il processo specificato per sospendere la relativa esecuzione in modo da poter analizzare lo stato corrente. | |
DetachAll() | (Ereditato da Debugger2) | |
DetachAll() | Rimuove da tutti i programmi connessi. | |
ExecuteStatement(String, Int32, Boolean) | (Ereditato da Debugger2) | |
ExecuteStatement(String, Int32, Boolean) | Esegue l'istruzione specificato.se TreatAsExpression il flag è true, la stringa viene interpretata come espressione e l'output viene inviato a Finestra di comando. | |
GetExpression(String, Boolean, Int32) | (Ereditato da Debugger2) | |
GetExpression(String, Boolean, Int32) | Valuta un'espressione basata sullo stack frame corrente.Se l'espressione può essere analizzata ma non essere valutata, un oggetto viene restituito ma non contiene un valore valido. | |
GetExpression2(String, Boolean, Boolean, Int32) | (Ereditato da Debugger2) | |
GetExpression2(String, Boolean, Boolean, Int32) | Valuta un'espressione basata sullo stack frame corrente.Se l'espressione può essere analizzata ma non essere valutata, un oggetto viene restituito ma non contiene un valore valido.questa funzione membro è simile a GetExpression ma con un parametro booleano aggiuntivo, che può essere impostato su true per indicare che deve essere valutata l'espressione come istruzione. | |
GetProcesses(Transport, String) | (Ereditato da Debugger2) | |
GetProcesses(Transport, String) | ||
Go(Boolean) | (Ereditato da Debugger2) | |
Go(Boolean) | Iniziare a eseguire il programma dall'istruzione corrente. | |
RunToCursor(Boolean) | (Ereditato da Debugger2) | |
RunToCursor(Boolean) | Esegue il programma nella posizione corrente del cursore del file di origine. | |
SetNextStatement() | (Ereditato da Debugger2) | |
SetNextStatement() | Imposta l'istruzione successiva da eseguire, a seconda della posizione del cursore nel file di origine corrente. | |
SetSymbolSettings | È possibile impostare varie impostazioni per i simboli di .PDB utilizzati da Visual Studio per eseguire il debug e forza nuovo caricamento dei simboli. | |
StepInto(Boolean) | (Ereditato da Debugger2) | |
StepInto(Boolean) | Esegue la chiamata di funzione seguente, se possibile. | |
StepOut(Boolean) | (Ereditato da Debugger2) | |
StepOut(Boolean) | Esce dalla funzione corrente. | |
StepOver(Boolean) | (Ereditato da Debugger2) | |
StepOver(Boolean) | Esegue la chiamata di funzione seguente. | |
Stop(Boolean) | (Ereditato da Debugger2) | |
Stop(Boolean) | Le interruzioni del debug e termina o rimuove da tutti i processi connessi. | |
TerminateAll() | (Ereditato da Debugger2) | |
TerminateAll() | Terminare tutti correntemente in esecuzione i processi di debug. | |
WriteMinidump(String, dbgMinidumpOption) | (Ereditato da Debugger2) | |
WriteMinidump(String, dbgMinidumpOption) |
In alto
Note
il debugger è disponibile con DTE2 oggetto con la proprietà Debugger proprietà, come illustrato nell'esempio seguente.Un oggetto del debugger è disponibile per ogni istanza dell'ambiente di sviluppo interattivo (IDE).
Esempi
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;
}