入門編 ~マクロ実行中なのか、マクロ実行中以外なのか~

  • 概要

    hm.NETでは通常、マクロを実行して、「マクロ実行中の一瞬の間」で、あなたが制作した「.dll」を読み込み&実行し、
    マクロの実行が終わった後も、.dll内では常駐しつづけて続きの処理を実行する、というパターンが一般的となります。

  • マクロ実行中かどうか

    • C#側のソース

      マクロ中でもマクロ中以外でも、常時取得することが出来ます。

      Hm.Macro.IsExecuting
      MyTestForm.cs
      using System;
      using System.Windows.Forms;
      using Hidemaru;
      
      namespace HmTest
      {
          partial class HmTestForm
          {
              protected void MethodCreate()
              {
                  System.Diagnostics.Trace.WriteLine("フォーム生成時");
      
                  if (Hm.Macro.IsExecuting)
                  {
                      System.Diagnostics.Trace.WriteLine("マクロ実行中です。");
                  }
                  else
                  {
                      System.Diagnostics.Trace.WriteLine("マクロ実行中ではありません");
                  }
              }
              protected void MethodTick()
              {
                  if (Hm.Macro.IsExecuting)
                  {
                      System.Diagnostics.Trace.WriteLine("マクロ実行中です。");
                  }
                  else
                  {
                      System.Diagnostics.Trace.WriteLine("マクロ実行中ではありません");
                  }
                  System.Diagnostics.Trace.WriteLine("チック時");
              }
              protected void MethodDestroy()
              {
                  System.Diagnostics.Trace.WriteLine("フォームクローズ時");
              }
          }
      
      }
      
      
    • 秀丸マクロ側のソース

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