Gewusst wie: Steuern des Ausgabefensters

Add-Ins für Visual Studio sind in Visual Studio 2013 veraltet. Sie müssen für Ihre Add-Ins ein Upgrade auf VSPackage-Erweiterungen durchführen. Weitere Informationen über das Durchführen eines Upgrades finden Sie unter FAQ: Konvertieren von Add-Ins in VSPackage-Erweiterungen.

Das Ausgabefenster zeigt die Statusmeldungen für verschiedene Features in der integrierten Entwicklungsumgebung (Integrated Development Environment – IDE) an. Dazu zählen sowohl Buildfehler, die bei der Kompilierung eines Projekts auftreten, als auch Ergebnisse aus dem Vergleich einer Transact-SQL-Syntax in einer gespeicherten Prozedur mit einer Zieldatenbank. Bestimmte IDE-Funktionen, z. B. Funktionen von externen Tools oder über das Befehlsfenster aufgerufene Befehle, übergeben Daten an spezielle Bereiche des Ausgabefensters. Die Ausgabe externer Tools, beispielsweise BAT- oder COM-Dateien, wird in der Regel im Eingabeaufforderungsfenster von Windows angezeigt, kann jedoch auch im Ausgabefenster angezeigt werden.

Das Automatisierungsmodell von Visual Studio bietet die folgenden Objekte zum Steuern des Ausgabefensters:

Objektname

Beschreibung

OutputWindow

Stellt das Ausgabefenster dar.

OutputWindowPanes

Eine Auflistung mit allen Bereichen des Ausgabefensters.

OutputWindowPane

Stellt einen einzelnen Bereich im Ausgabefenster dar.

OutputWindowEvents

Bietet die Möglichkeit, auf Ereignisse zu reagieren, die im Ausgabefenster auftreten.

Außer den Inhalten des Ausgabefensters können auch dessen Merkmale wie Breite und Höhe gesteuert werden. Weitere Informationen finden Sie unter Gewusst wie: Ändern des Erscheinungsbilds eines Fensters.

Der Text in den Bereichen des Ausgabefensters kann mit dem Editor-Automatisierungsmodell von Visual Studio unter Verwendung des TextDocument-Objekts, des EditPoint-Objekts und ähnlicher Objekte wie Code im Code-Editor bearbeitet werden. Weitere Informationen finden Sie unter Gewusst wie: Steuern des Code-Editors (Visual Basic).

Hinweis

Je nach den aktiven Einstellungen oder der Version unterscheiden sich die Dialogfelder und Menübefehle auf Ihrem Bildschirm möglicherweise von den in der Hilfe beschriebenen.Bei der Entwicklung dieser Verfahren war die Option Allgemeine Entwicklungseinstellungen aktiviert.Klicken Sie im Menü Extras auf Einstellungen importieren und exportieren, um die Einstellungen zu ändern.Weitere Informationen finden Sie unter Anpassen der Entwicklungseinstellungen in Visual Studio.

Beispiel

In diesem Beispiel wird veranschaulicht, wie dem Ausgabefenster ein neuer Fensterbereich und diesem Text hinzugefügt wird. Weitere Informationen zum Ausführen des Beispiels finden Sie unter Gewusst wie: Kompilieren und Ausführen der Codebeispiele für das Automatisierungsobjektmodell.

Public Sub OnConnection(ByVal application As Object, ByVal _
  connectMode As ext_ConnectMode, ByVal addInInst As Object, _
  ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    _applicationObject = CType(application, DTE2)
    _addInInstance = CType(addInInst, AddIn)
    ' Pass the applicationObject member variable to the code example.
    OutputWindowTest(_applicationObject)
End Sub

Sub OutputWindowTest(ByVal dte As DTE2)
    ' Create a tool window reference for the Output window
    ' and window pane.
    Dim ow As OutputWindow = dte.ToolWindows.OutputWindow
    Dim owP As OutputWindowPane

    ' Add a new pane to the Output window.
    owP = ow.OutputWindowPanes.Add("A New Pane")
    ' Add a line of text to the new pane.
    owP.OutputString("Some Text")
End Sub
public void OnConnection(object application, ext_ConnectMode 
  connectMode, object addInInst, ref Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    // Pass the applicationObject member variable to the code example.
    OutputWindowTest(_applicationObject);
}

public void OutputWindowTest(DTE2 dte)
{
    // Create a tool window reference for the Output window
    // and window pane.
    OutputWindow ow = dte.ToolWindows.OutputWindow;
    OutputWindowPane owP;

    // Add a new pane to the Output window.
    owP = ow.OutputWindowPanes.Add("A New Pane");
    // Add a line of text to the new pane.
    owP.OutputString("Some Text");
}

In diesem Beispiel wird dem Bereich Erstellen im Ausgabefenster Text hinzugefügt und dann abgerufen.

Public Sub OnConnection(ByVal application As Object, ByVal _
  connectMode As ext_ConnectMode, ByVal addInInst As Object, _
  ByRef custom As Array) Implements IDTExtensibility2.OnConnection
    _applicationObject = CType(application, DTE2)
    _addInInstance = CType(addInInst, AddIn)
    ' Pass the applicationObject member variable to the code example.
    writeReadOW(_applicationObject)
End Sub

Sub writeReadOW(ByVal dte As DTE2)
    ' Add-in code.
    ' Create a reference to the Output window.
    ' Create a tool window reference for the Output window
    ' and window pane.
    Dim ow As OutputWindow = dte.ToolWindows.OutputWindow
    Dim owP As OutputWindowPane
    ' Create a reference to the pane contents.
    Dim owPTxtDoc As TextDocument

    ' Select the Build pane in the Output window.
    owP = ow.OutputWindowPanes.Item("Build")
    owP.Activate()
    owPTxtDoc = owP.TextDocument

    ' Put some text in the pane.
    owP.OutputString("Testing 123.")
    ' Retrieve the text contents of the pane.
    MsgBox("Startpoint: " & owPTxtDoc.StartPoint.DisplayColumn)
    MsgBox(owPTxtDoc.StartPoint.CreateEditPoint. _
      GetText(owPTxtDoc.EndPoint))
End Sub
using System.Windows.Forms;
public void OnConnection(object application, ext_ConnectMode 
  connectMode, object addInInst, ref Array custom)
{
    _applicationObject = (DTE2)application;
    _addInInstance = (AddIn)addInInst;
    // Pass the applicationObject member variable to the code example.
    writeReadOW(_applicationObject);
}

public void writeReadOW(DTE2 dte)
{
    // Add-in code.
    // Create a reference to the Output window.
    // Create a tool window reference for the Output window
    // and window pane.
    OutputWindow ow = dte.ToolWindows.OutputWindow;
    OutputWindowPane owP;
    // Create a reference to the pane contents.
    TextDocument owPTxtDoc;
    EditPoint2 strtPt;

    // Select the Build pane in the Output window.
    owP = ow.OutputWindowPanes.Item("Build");
    owP.Activate();
    owPTxtDoc = owP.TextDocument;
            
    // Put some text in the pane.
    owP.OutputString("Testing 123.");
    // Retrieve the text contents of the pane.
    System.Windows.Forms.MessageBox.Show("Startpoint: " + 
      owPTxtDoc.StartPoint.DisplayColumn);
    strtPt = (EditPoint2)owPTxtDoc.StartPoint.CreateEditPoint();
    System.Windows.Forms.MessageBox.Show
      (strtPt.GetText(owPTxtDoc.EndPoint));
}

Siehe auch

Aufgaben

Gewusst wie: Ändern des Erscheinungsbilds eines Fensters

Gewusst wie: Erstellen von Add-Ins

Exemplarische Vorgehensweise: Erstellen eines Assistenten

Konzepte

Diagramm "Automationsobjektmodell"

Weitere Ressourcen

Erstellen und Steuern von Umgebungsfenstern

Erstellen von Add-Ins und Assistenten

Referenz zur Automatisierung und Erweiterbarkeit