入門編 ~秀丸マクロを文字列で実行~

概要

hm.NETでは秀丸マクロを文字列で実行可能です。
一部の制限はありますが、通常の運用では困ることはないでしょう。

秀丸マクロを文字列で実行可能です。

マクロ実行中のみ実行可能

Hm.Macro.Eval("秀丸マクロの文字列");

類似のものですが、「マクロを実行していない時にのみ、実行可能」な関数としてHm.Macro.Exec.Eval(...)があるので注意してください。

  • C#側のソース

    MyTestForm.cs
    using System;
    using System.Windows.Forms;
    using Hidemaru;
    
    namespace HmTest
    {
        partial class HmTestForm
        {
            protected void MethodCreate()
            {
                System.Diagnostics.Trace.WriteLine("フォーム生成時");
    
                var result = Hm.Macro.Eval(@"
                    message (""abc"");
                ");
    
                if (result.Result > 0)
                {
                    return "成功";
                } else
                {
                    return "失敗";
                }
    
            }
            protected void MethodTick()
            {
                System.Diagnostics.Trace.WriteLine("チック時");
            }
            protected void MethodDestroy()
            {
                System.Diagnostics.Trace.WriteLine("フォームクローズ時");
            }
        }
    
    }
    
    
  • 秀丸マクロ側のソース

    前章の「HmNETTest.mac」と同一です。
    一度マクロを実行し、「デバッグモニター」にどのように順次表示されるか確認しましょう。