Debugger3 – rozhraní
Debugger3slouží k interrogate a manipulovat s nimi stát ladicí program a program právě laděn.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 | Získá kolekce vázané zarážek, které byly naposledy současně přístupů. |
![]() |
BreakpointLastHit | Získá poslední zarážky přístupů. |
![]() |
Breakpoints | Získá kolekce zarážek. |
![]() |
CurrentMode | Načte aktuální režim ladění v rámci IDE. |
![]() |
CurrentProcess | Získá nebo nastaví aktivní proces. |
![]() |
CurrentProgram | Nastaví nebo vrátí aktivní aplikaci. |
![]() |
CurrentStackFrame | Získá nebo nastaví aktuální snímek zásobníku. |
![]() |
CurrentThread | Získá nebo nastaví aktuální podproces právě laděn. |
![]() |
DebuggedProcesses | Získá seznam procesů, které jsou právě laděn. |
![]() |
DTE | Načtení objektu nejvyšší úrovně rozšiřitelnosti. |
![]() |
ExceptionGroups | Získá nastavení výjimek ladicího programu.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.Uživatel v dialogovém okně Nastavit výchozí chování při tracepoint nebo zarážka.Tuto vlastnost lze změnit výchozí chování. |
![]() |
HexDisplayMode | Získá nebo nastaví hodnotu, která označuje, zda jsou výrazy výstup v šestnáctkovém nebo desítkovém formátu. |
![]() |
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 | Získá seznam jazyků, které podporuje ladicí program. |
![]() |
LastBreakReason | Získá poslední důvod, který program bylo přerušeno.Pokud program je spuštěn vrátí DBG_REASON_NONE. |
![]() |
LocalProcesses | Získá seznam procesů, že právě v tomto počítači spuštěna. |
![]() |
OnlyLoadSymbolsManually | Získá hodnota, která určuje, zda jsou ručně nebo automaticky načíst symboly.Určit uživatele sady Visual Studio tohoto nastavení v Možnosti dialogové okno.Další informace o nastavení této hodnoty aplikace Visual Studio, viz [ZASTARALÉ] Postupy: Určení umístění symbolů a způsobu jejich načítání. |
![]() |
Parent | Bezprostřední nadřízený objekt získává Debugger3 objektu (DTE2). |
![]() |
SymbolCachePath | Načte řetězec, který obsahuje cestu k mezipaměti symboly, symboly stáhnout ze serveru symboly při aplikací Visual Studio.Můžete zadat cestu mezipaměti symboly v Možnosti dialogové okno.Další informace naleznete v tématu [ZASTARALÉ] Postupy: Používání serveru symbolů. |
![]() |
SymbolPath | Načte řetězec, který obsahuje cesty.PDB soubory symbolů, které slouží pro ladění aplikací Visual Studio.Visual Studio uživatel může zadat symboly cesty Možnosti dialogové okno.Další informace naleznete v tématu [ZASTARALÉ] Postupy: Určení umístění symbolů a způsobu jejich načítání. |
![]() |
SymbolPathState | Načte řetězec, který představuje stav všechny cesty symbol pro.PDB soubory symbolů, které slouží pro ladění aplikací Visual Studio. |
![]() |
Transports | Získá kolekce podporované ladění přepravy. |
Nahoru
Metody
Název | Popis | |
---|---|---|
![]() |
Break | Způsobí, že daný proces tak, aby jeho aktuální stav lze analyzovat pozastavit jeho provádění. |
![]() |
DetachAll | Odpojí se od všech připojených programů. |
![]() |
ExecuteStatement | Provede zadaný příkaz.Pokud TreatAsExpression je příznak trueje řetězec interpretován jako výraz a výstup je odeslán Příkazové okno. |
![]() |
GetExpression | Vyhodnotí výraz na základě aktuální snímek zásobníku.Pokud výraz lze analyzovat, ale nebudou vyhodnoceny, objekt je vrácena, ale neobsahuje platnou hodnotu. |
![]() |
GetExpression2 | Vyhodnotí výraz na základě aktuální snímek zásobníku.Pokud výraz lze analyzovat, ale nebudou vyhodnoceny, objekt je vrácena, ale neobsahuje platnou hodnotu.Členské funkce je podobná GetExpression , ale s další parametr Boolean, které lze nastavit na hodnotu true označuje, že je výraz vyhodnocen jako prohlášení. |
![]() |
GetProcesses | |
![]() |
Go | Spustí provádění programu od aktuální příkaz. |
![]() |
RunToCursor | Spustí program na aktuální pozici kurzoru zdrojového souboru. |
![]() |
SetNextStatement | Nastaví další instrukce, které mají být provedeny podle umístění kurzoru v aktuální zdrojový soubor. |
![]() |
SetSymbolSettings | Nastaví pro různá nastavení.Symboly PDB používá pro ladění a překládky sil všech symbolů Visual Studio. |
![]() |
StepInto | Kroky do další volání funkce, pokud je to možné. |
![]() |
StepOut | Kroky z aktuální funkce. |
![]() |
StepOver | Kroky přes další volání funkce. |
![]() |
Stop | Zastaví ladění a ukončí nebo odpojí od všechny připojené procesy. |
![]() |
TerminateAll | Ukončí všechny aktuálně spuštěné procesy ladění. |
![]() |
WriteMinidump |
Nahoru
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;
}