Debugger3 – rozhraní
Debugger3slouží k interrogate a stavu ladicí program a program laděné manipulovat. Debugger3nahrazuje Debugger2 a Debugger rozhraní.
Obor názvů: EnvDTE90
Sestavení: EnvDTE90 (v EnvDTE90.dll)
Syntaxe
'Deklarace
<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 zveřejňuje následující členy.
Vlastnosti
Název | Popis | |
---|---|---|
AllBreakpointsLastHit | (Zděděno z Debugger2.) | |
AllBreakpointsLastHit | Získá kolekce zarážek vazby, které byly naposledy současně přístupů. | |
BreakpointLastHit | (Zděděno z Debugger2.) | |
BreakpointLastHit | Získá poslední zarážky přístupů. | |
Breakpoints | (Zděděno z Debugger2.) | |
Breakpoints | Získá kolekce zarážek. | |
CurrentMode | (Zděděno z Debugger2.) | |
CurrentMode | Načte aktuální režim ladění v rámci IDE. | |
CurrentProcess | (Zděděno z Debugger2.) | |
CurrentProcess | Získá nebo nastaví aktivní proces. | |
CurrentProgram | (Zděděno z Debugger2.) | |
CurrentProgram | Nastaví nebo vrátí aktivní aplikaci. | |
CurrentStackFrame | (Zděděno z Debugger2.) | |
CurrentStackFrame | Získá nebo nastaví aktuální snímek zásobníku. | |
CurrentThread | (Zděděno z Debugger2.) | |
CurrentThread | Získá nebo nastaví aktuální podproces laděné. | |
DebuggedProcesses | (Zděděno z Debugger2.) | |
DebuggedProcesses | Získá seznam procesů, které jsou právě laděn. | |
DTE | (Zděděno z Debugger2.) | |
DTE | Načtení objektu nejvyšší úrovně rozšiřitelnosti. | |
ExceptionGroups | Získá nastavení výjimek pro ladicí program.Jednotlivé výjimky tato nastavení určují, zda ladicí program poskytuje kód příležitost zpracovat výjimku před konce spuštění ladicího programu. | |
ForceContinue | Získá nebo nastaví hodnotu, která určuje, zda debugger konce nebo pokračuje po tracepoint nebo zarážka dokončení spuštění makra.Výchozí chování je nastaveno uživatelem v dialogovém okně při tracepoint nebo zarážka.Tuto vlastnost lze změnit výchozí chování. | |
HexDisplayMode | (Zděděno z Debugger2.) | |
HexDisplayMode | Získá nebo nastaví hodnotu, která označuje, zda jsou výrazy v šestnáctkovém nebo desítkovém formátu výstupu. | |
HexInputMode | (Zděděno z Debugger2.) | |
HexInputMode | Získá nebo nastaví hodnotu, která označuje, zda jsou výrazy vyhodnoceny v šestnáctkovém nebo desítkovém formátu. | |
Languages | (Zděděno z Debugger2.) | |
Languages | Získá seznam jazyků, které podporuje ladicí program. | |
LastBreakReason | (Zděděno z Debugger2.) | |
LastBreakReason | Získá poslední důvod programu bylo přerušeno.Pokud program je spuštěn vrátí DBG_REASON_NONE. | |
LocalProcesses | (Zděděno z Debugger2.) | |
LocalProcesses | Získá seznam procesů že aktuálně spuštěné v počítači. | |
OnlyLoadSymbolsManually | Získá hodnota, která určuje, zda jsou ručně nebo automaticky načíst symboly.Visual Studio uživatel zjistit v toto nastavení volby dialogové okno.Další informace o nastavení této hodnoty aplikace Visual Studio How to: Specify a Symbol Path. | |
Parent | (Zděděno z Debugger2.) | |
Parent | Získá bezprostřední nadřízený objekt Debugger3 objektu (DTE2). | |
SymbolCachePath | Načte řetězec, který obsahuje cestu k mezipaměti symboly používají při symboly stáhnout ze serveru symbolů Visual Studio.Můžete zadat cestu mezipaměti symboly Možnosti dialogové okno.Další informace naleznete v tématu How to: Use a Symbol Server. | |
SymbolPath | Načte řetězec obsahující cesty.PDB soubory symbolů, které slouží pro ladění aplikací Visual Studio.Visual Studio uživatel může zadat symboly cesty volby dialogové okno.Další informace naleznete v tématu How to: Specify a Symbol Path. | |
SymbolPathState | Řetězec, který představuje stav pro všechny cesty symbol získá.PDB soubory symbolů, které slouží pro ladění aplikací Visual Studio. | |
Transports | (Zděděno z Debugger2.) | |
Transports | Získá sada podporovaných ladění přepravy. |
Na začátek
Metody
Název | Popis | |
---|---|---|
Break(Boolean) | (Zděděno z Debugger2.) | |
Break(Boolean) | Způsobí, že daný proces přerušit jeho tak, že lze analyzovat aktuální stav. | |
DetachAll() | (Zděděno z Debugger2.) | |
DetachAll() | Odpojí se od všech připojených programů. | |
ExecuteStatement(String, Int32, Boolean) | (Zděděno z Debugger2.) | |
ExecuteStatement(String, Int32, Boolean) | Provede zadaný příkaz.Pokud TreatAsExpression je příznak trueje řetězec interpretován jako výraz a výstup je odeslán okno Příkaz. | |
GetExpression(String, Boolean, Int32) | (Zděděno z Debugger2.) | |
GetExpression(String, Boolean, Int32) | Vyhodnotí výraz na základě aktuálního snímku zásobníku.Pokud výraz lze analyzovat, ale nebudou vyhodnoceny, objekt je vrácena, ale neobsahuje platnou hodnotu. | |
GetExpression2(String, Boolean, Boolean, Int32) | (Zděděno z Debugger2.) | |
GetExpression2(String, Boolean, Boolean, Int32) | Vyhodnotí výraz na základě aktuálního snímku zásobníku.Pokud výraz lze analyzovat, ale nebudou vyhodnoceny, objekt je vrácena, ale neobsahuje platnou hodnotu.Tato funkce člena je podobná GetExpression , ale s další booleovský parametr, který lze nastavit na true označuje, že je výraz vyhodnocen jako příkaz. | |
GetProcesses(Transport, String) | (Zděděno z Debugger2.) | |
GetProcesses(Transport, String) | ||
Go(Boolean) | (Zděděno z Debugger2.) | |
Go(Boolean) | Spustí program spuštění aktuálního příkazu. | |
RunToCursor(Boolean) | (Zděděno z Debugger2.) | |
RunToCursor(Boolean) | Spustí program na aktuální pozici kurzoru zdrojového souboru. | |
SetNextStatement() | (Zděděno z Debugger2.) | |
SetNextStatement() | Nastaví další instrukce mají být provedeny podle umístění kurzoru v aktuální zdrojový soubor. | |
SetSymbolSettings | Nastaví pro různá nastavení.Symboly PDB používá Visual Studio pro ladění a překládky sil všech symbolů. | |
StepInto(Boolean) | (Zděděno z Debugger2.) | |
StepInto(Boolean) | Kroky do další funkce volání, pokud možno. | |
StepOut(Boolean) | (Zděděno z Debugger2.) | |
StepOut(Boolean) | Kroky z aktuální funkce. | |
StepOver(Boolean) | (Zděděno z Debugger2.) | |
StepOver(Boolean) | Kroky přes další volání funkce. | |
Stop(Boolean) | (Zděděno z Debugger2.) | |
Stop(Boolean) | Zastaví ladění a ukončí nebo odpojí od všechny připojené procesy. | |
TerminateAll() | (Zděděno z Debugger2.) | |
TerminateAll() | Ukončí všechny aktuálně spuštěné procesy ladění. | |
WriteMinidump(String, dbgMinidumpOption) | (Zděděno z Debugger2.) | |
WriteMinidump(String, dbgMinidumpOption) |
Na začátek
Poznámky
Ladicí program je k dispozici DTE2 objektu prostřednictvím jeho Debugger vlastnost, jak ukazuje následující příklad. Jeden objekt debugger je k dispozici pro každou instanci interaktivní vývojové prostředí (IDE).
Příklady
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;
}