Share via


Macros.EmitMacroCode メソッド

現在記録中のマクロにコード行を書き込みます。 このメソッドはマクロから使用しないでください。

名前空間:  EnvDTE
アセンブリ:  EnvDTE (EnvDTE.dll 内)

構文

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

パラメーター

  • Code
    型: System.String
    必ず指定します。マクロに追加するコード行です。

解説

EmitMacroCode を使用すると、マクロを構築したり、既存のマクロにコードを追加したりできます。

環境がマクロ記録モードでない場合、このメソッドは失敗します。 EmitMacroCode は、アドインからのみ使用します。

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 セキュリティ

  • 直前の呼び出し元に対する完全な信頼。 このメンバーは、部分的に信頼されているコードから使用することはできません。 詳細については、「部分信頼コードからのライブラリの使用」を参照してください。

参照

参照

Macros インターフェイス

EnvDTE 名前空間

その他の技術情報

マクロの使用による反復操作の自動化