Freigeben über


Macros.EmitMacroCode-Methode

Übernimmt die angegebene Codezeile in das Makro, das gerade aufgezeichnet wird. Diese Methode sollte nicht innerhalb eines Makros verwendet werden.

Namespace:  EnvDTE
Assembly:  EnvDTE (in EnvDTE.dll)

Syntax

'Declaration
Sub EmitMacroCode ( _
    Code As String _
)
void EmitMacroCode(
    string Code
)
void EmitMacroCode(
    String^ Code
)
abstract EmitMacroCode : 
        Code:string -> unit
function EmitMacroCode(
    Code : String
)

Parameter

  • Code
    Typ: String

    Erforderlich. Die Codezeile, die dem Makro hinzugefügt werden soll.

Hinweise

Mithilfe von EmitMacroCode können Sie Makros erstellen oder vorhandenen Makros Code hinzufügen.

Falls sich die Umgebung nicht im Makroaufzeichnungsmodus befindet, verursacht diese Methode einen Fehler. EmitMacroCode sollte nur innerhalb von Add-Ins verwendet werden.

Beispiele

public void CodeExample(DTE2 dte, AddIn addin)
{
    // INSTRUCTIONS: Run this code, open a solution, start
    // recording a macro, then connect the add-in containing this code.
    try
    {
        Macros mac = dte.Macros;
        if (mac.IsRecording)
        {
            mac.Pause();
            if (!mac.IsRecording)
                mac.Resume();
            mac.EmitMacroCode("rem Code added by the EmitMacroCode method");
            // Demonstrate these two properties return the same reference.
            bool test = mac.DTE.Equals(mac.Parent);
            if (test) MessageBox.Show("The DTE and Parent property refer to the same object.");
            else MessageBox.Show("The DTE and Parent property do not refer to the same object.");
        }
        else MessageBox.Show("Start a macro recording session and reconnect addin");
    }
    catch(Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

.NET Framework-Sicherheit

Siehe auch

Referenz

Macros Schnittstelle

EnvDTE-Namespace

Weitere Ressourcen

Automating Repetitive Actions by Using Macros