秀丸マクロ.net

継続する変数 static 変数

  • 概要

    hm.NETでは値を継続して使っていくことがとても自然です。
    なぜなら全てが継続的だからです。

  • staticなフィールド

    • C#側のソース

      staticな変数は値が継続しますので以下のようにするだけで
      1つのプロセス内でマクロを実行する度にカウンターが増加していきます。

      HmTestClass04.dllとしてコンパイルのこと
      using System;
      
      namespace HmTestClass04
      {
          public class Class4
          {
              static int Counter = 0;
      
              public static IntPtr counter()
              {
                  Counter++;
                  System.Diagnostics.Trace.WriteLine($"{Counter}");
      
                  return (IntPtr)1;
              }
          }
      }
      
    • 秀丸マクロ側のソース

      test01.macなどと適当に名前を付ける
      #HMNET = loaddll( hidemarudir + @"\hm.NET.dll" );
      
      #result1 = dllfuncw( #HMNET, "CallMethod", currentmacrodirectory + @"\HmTestClass04.dll", "HmTestClass04.Class4", "counter" );
      

      とあるプロセスに対して(とある秀丸マクロのタブに対して)このマクロを実行する度に。
      カウンターが増えていくことがデバッグモニターで確認出来るかと思います。