[ 新規に投稿する ]

Windows11にしてから、動かないマクロが有りますNo.13441
dagloss さん 25/04/22 16:42 [ コメントを投稿する ]
  daglossと申します。

何時も大変有益に使用させて頂いています。
有り難う存じます。

早速ですが、社内のパソコンを一斉にWindows11の機器に
交換導入致しました。

そうしましたところ、一箇所のみ上手く動作しない
マクロが出て来てしまいました。
仲々、上手く処理出来ずに結局動かないままとなってしまっています。

テンプレートにて新規メール作成をする中で、
カーソルを件名の先頭にある1文字を削除しつつ、
その位置に止まらせるマクロなのですが、動きません。

    loaddll "TKInfo.dll";
    moveto 0, -9999;
    searchdown "(?<=/名前です)", regular;
    if( selecting ) escape;

Windows11にしてから、このマクロだけが動作しないままとなって
おります。
何処がおかしいのかご教授くだされば幸いです。

何卒宜しく、お願い申し上げます。
[ ]
RE:13441 Windows11にしてから、動かないマクロが有りますNo.13442
秀まるお2 さん 25/04/22 18:45 [ コメントを投稿する ]
  連絡いただいたマクロがWindows11になってうまく動かないのはちょっと理由が分からないです。

とりあえず、うまく動くマシンと動かないマシンの両方テストできるなら、マクロの中にmessage文を入れて果たしてどこから動作が違ってるのか確認してはどうでしょうか。

マクロの例としては、

    loaddll "TKInfo.dll";
    moveto 0, -9999;
    message "movetoの直後: x = " + str(x) + "  y = " + str(y);
    searchdown "(?<=/名前です)", regular;
    message "searchdownの直後: result=" + str(result) + "  x = " + str(x) + "  y = " + str(y);
    if( selecting ) escape;
    message "escapeの直後: x = " + str(x) + "  y = " + str(y);

みたいにしてみて表示されるメッセージでカーソル位置など確認してみたらどうかなぁと思います。

僕の所だと、

    movetoの直後:   x=0 y=-4
    searchdownの直後: result=1 x=20 y=-2
    escapeの直後: x=20 y=-2

みたいなメッセージが出ます。

searchdownでうまくヒットしてないなら、「searchdownの直後」の所で「result=0」みたいなのが出てくると思います。

searchdownの動作については「動作環境・検索」の「検索の動作」の設定が関係して動作が変わるので、それを防ぐためには

    setcompatiblemode 0x00000200;

みたいなのをマクロの先頭の方に入れる作戦とかもあります。
[ ]
RE:13442 Windows11にしてから、動かないマクロが有りますNo.13444
dagloss さん 25/04/23 07:06 [ コメントを投稿する ]
  秀まるお2様

何時も、詳しくご教示頂き有難う御座います。
ご提示くださいました、解決の道筋に沿って
確認してみたいと存じます。

引き続き宜しく、お願い致します。
[ ]
RE:13442 Windows11にしてから、動かないマクロが有りますNo.13445
dagloss さん 25/04/23 07:54 [ コメントを投稿する ]
  秀まるお2様

早速、試してみましたところ
>searchdownでうまくヒットしてないなら、「searchdownの直後」の所で「result=0」みたいなのが出てくると思います。

正しくその状態でした。result=0 が出て参りましたので、


>    setcompatiblemode 0x00000200;
>
>みたいなのをマクロの先頭の方に入れる作戦とかもあります。

こちらも試しましたが、件名に入力されている
  
         a/名前です の直後にカーソルがある状態です。

正常に動作しておりました時は、マクロ通り
件名にある a を削除して、/の前にカーソルが位置していました

このマクロだけ動作しないので、諦めかけていたのですが、
テンプレートで呼び出す新規作成メールの多数で使用して
いますことから、矢張り何とかしたいと考えています。

宜しくお願い申し上げます。

[ ]
RE:13445 Windows11にしてから、動かないマクロが有りますNo.13446
秀まるお2 さん 25/04/23 09:09 [ コメントを投稿する ]
  そちらの状況よく理解してないかもしれませんが、例えばテンプレートで

$(SetHeader,Subject,"a/名前です")$-

みたいな指定をしてて、実際にSubject:ヘッダが

    Subject:  a/名前です

みたいになってるとして、マクロによってカーソル位置を「a」の直後に移動させたいなら、

    searchdown "(?<=/名前です)", regular;

ではダメなはずです。前方一致じゃなくて、後方一致を使わないとダメだと思います。

    searchdown "(?=/名前です)", regular;

ならうまく「a」の直後にカーソルが移動します。

Windows10か11か、あるいは秀丸メールのバージョンとかも関係なく、そういう指定でないとダメだと思います。

Windows10から11に引っ越しする時に、何かマクロを取り違えたとかじゃないでしょうか。

実際にうまく動作になってるマクロが本当にその

    searchdown "(?<=/名前です)", regular;

になってて、たしかにそれで"/名前です"の直前にカーソル移動してるなら、そっちの方がおかしいように思います。???
[ ]
RE:13446 Windows11にしてから、動かないマクロが有りますNo.13449
dagloss さん 25/04/24 10:13 [ コメントを投稿する ]
  秀まるお2様

そもそも、以前にお尋ねしてご教授頂きました内容を
調べているのですが、見つけられずにいます。
Windows11への移行時に何らかの変更は加えておりませんが、
私自身の感覚なので、ホームディレクトリをそっくり以前の状態で、
移して利用していますので、特に設定変更を加えたわけでは有りません。
以前の環境も既に有りませんが、保存していたTsuruKameData フォルダは
そのまま残っております。

件名にカーソル位置を置く事をお尋ねした折りに、
常時件名を a/名前です として、カーソル位置をaの後に来るように
ご教示頂き、それは実現できたのですが、追加で自分自身で
その a を消去して最終的には  /名前です  と言う件名になり、
/の前にカーソルがある状態で、新規作成のメールが開始出来るようにしておりました。

このマクロだけが動かないので、お尋ねしました次第です。
ところで、

>実際にうまく動作になってるマクロが本当にその
>
>    searchdown "(?<=/名前です)", regular;
>
>になってて、たしかにそれで"/名前です"の直前にカーソル移動してるなら、そっちの方がおかしいように思います。???

今少し、記憶を辿りながら内容一つずつ追っていきたいと思います。
お騒がせ致しまして申し訳有りませんでした。




[ ]
RE:13449 Windows11にしてから、動かないマクロが有りますNo.13450
秀まるお2 さん 25/04/24 14:22 [ コメントを投稿する ]
  さらに1つ疑問があったんですが、そもそも連絡いただいたマクロは検索してカーソル移動するだけなのに、件名の中の文字を削除するような話があって、なんのことか全然意味不明でした。

> ・・・・追加で自分自身で
> その a を消去して最終的には  /名前です  と言う件名になり、

とあるなら、たぶん何か編集する命令(delete文とか)が入ってないとおかしいように思います。???

> 以前の環境も既に有りませんが、保存していたTsuruKameData フォルダは
> そのまま残っております。

秀丸メールのデータ用フォルダとは別に、どこかに秀丸エディタ/秀丸メール用のマクロを保存してたフォルダがあると思います。そこがうまく移行できてないんじゃないかという気がします。今回のマクロが何か古いマクロになってしまってるとか。

古いパソコンの方がそのまま残ってるなら、そこの「マクロ - マクロ登録...」の「自動起動」ページの「送信用のエディタ起動時」に登録してるマクロを確認して、そこの「編集」ボタンで中身を見てみたらいいんじゃないかと思います。

あるいは、「設定 - 秀丸エディタの動作環境...」の「環境」ページの中の「マクロファイル用のフォルダ」を確認して、そこのフォルダの中に最新のマクロがあるかどうか探してみるとか。

--------------------------------------------------------
ここのサポート会議室に以前質問された内容がありました。それで作成されたマクロなら、

https://log.maruo.co.jp/hidesoft/hidesoft_8/x2209687.html

にあるようです。そこでは「deletebefore」を使ってカーソル位置より前を削除するマクロになってるようです。
[ ]
RE:13450 Windows11にしてから、動かないマクロが有りますNo.13452
dagloss さん 25/04/25 08:51 [ コメントを投稿する ]
  秀まるお2様

本当にお騒がせ致しました。
今朝方わたくしも、やっと過去ログを見つけ出すこと出来ました。
そもそも、このマクロのみ動かないことに拘泥してしまって、
余計に訳が分からなりました。
結果、この件に関してお騒がせ致しまして大変失礼致しました。

申し訳有りませんでした。

<念の為>No.09687 過去ログにあった通り

loaddll "TKInfo.dll";
moveto 0, -2;
searchdown "(?<=a)", regular;
deletebefore;
if( selecting ) escape;

にて、希望の動作出来ました。
本当にお騒がせ致しました。


>--------------------------------------------------------
>ここのサポート会議室に以前質問された内容がありました。それで作成されたマクロなら、
>
>https://log.maruo.co.jp/hidesoft/hidesoft_8/x2209687.html
>
>にあるようです。そこでは「deletebefore」を使ってカーソル位置より前を削除するマクロになってるようです。
[ ]

[ 新規に投稿する ]