[ 新規に投稿する ]

メール本文に秀丸エディタ及び秀丸メールのバージョンを挿入する No.00480
siniti さん 10/09/07 00:13 [ コメントを投稿する ]
やすひさ さん

sinitiです。

メール本文に秀丸エディタ及び秀丸メールのバージョンを挿入する Rev.20091108 マクロの説明で、[InsertHmJre] HmJre.dll のバージョン(ただし、秀丸メールでロードされるもの) とありますが、
このInsertHmJreで挿入される値は、以下の内容とは違うのでしょうか?

秀丸メールの「ヘルプ」の「バージョン情報」で表示される画面の「その他」ボタン押下で表示される、「秀丸メール」の中の、Hmjre.dllで表示される値 と解釈しましたが、

秀丸メールVer V5.5Beta15
Hmjre.dll Ver V3.29

上記のマクロで取得できるInsertHmJreの値:3.209

で相違があります。
[ ]
RE:00480 メール本文に秀丸エディタ及び秀丸メールのバージョンNo.00481
Iranoan さん 10/09/07 03:14 [ コメントを投稿する ]
   siniti さん今日は、Iranoan です。
> 上記のマクロで取得できるInsertHmJreの値:3.209
 この関数が何処に記載されているのか知りませんが、HmJre.dll のヴァー
ジョンについては、HmJre.dll に聞いてやるのが確実だと思います。
//------------------------------------------------------------
loaddll "HmJre.dll";
insert  str((dllfunc("JreGetVersion") & 0xFF00) / 256)
  + "." +
  str( (dllfunc("JreGetVersion") & 0xF0) / 16 * 10 +
    (dllfunc("JreGetVersion") & 0xF));
freedll;
[ ]
RE:00481 メール本文に秀丸エディタ及び秀丸メールのバージョンNo.00482
やすひさ さん 10/09/08 00:42 [ コメントを投稿する ]
   sinitiさん、こんにちは。

>> 上記のマクロで取得できるInsertHmJreの値:3.209
> この関数が何処に記載されているのか知りませんが、HmJre.dll のヴァー
>ジョンについては、HmJre.dll に聞いてやるのが確実だと思います。
>//------------------------------------------------------------
>loaddll "HmJre.dll";
>insert  str((dllfunc("JreGetVersion") & 0xFF00) / 256)
>  + "." +
>  str( (dllfunc("JreGetVersion") & 0xF0) / 16 * 10 +
>    (dllfunc("JreGetVersion") & 0xF));
>freedll;

Iranoanさんにはフォローいただきありがとうございます。

実際に使用しているマクロでは以下のようにしており、$HmJreVer[1]の部分が
「20」になるために起きた現象です。Iranoanさんが記載されたような変更を
することで正規の数値になることを確認しました。

/* 現状 */
loaddll "HmJre.dll";
if( result ){
  $HmJreVer[0] = str((dllfunc("JreGetVersion") & 0xFF00) / 256);
  $HmJreVer[1] = str((dllfunc("JreGetVersion") & 0x00F0) / 16 * 10);
  $HmJreVer[2] = str( dllfunc("JreGetVersion") & 0x000F);
  $HmJreVer = $HmJreVer[0] + "." + $HmJreVer[1] + $HmJreVer[2];
}

/* 修正後 */
loaddll "HmJre.dll";
if( result ){
  $HmJreVer[0] = str((dllfunc("JreGetVersion") & 0xFF00) / 256);
  $HmJreVer[1] = str((dllfunc("JreGetVersion") & 0x00F0) / 16 * 10
               +      dllfunc("JreGetVersion") & 0x000F           );
  $HmJreVer = $HmJreVer[0] + "." + $HmJreVer[1];
}

ここ最近、仕事が忙しいためアップロードまで時間がかかるかも知れません。
ご了承下さい。
(数日の内、遅くとも週末にはアップロードするつもりです)


-- 
秀丸エディタ     Ver.8.02β6
秀丸メール       Ver.5.50β15
HTMLメールViewer Ver.2.05

Windows 7 Professional [Version 6.1.7600] (32bit)
[ ]
RE:00482 メール本文に秀丸エディタ及び秀丸メールのバージョンNo.00483
siniti さん 10/09/08 21:05 [ コメントを投稿する ]
やすひささん
Iranoanさん

sinitiです。

ありがとうございました。
期待通りに動きました。
[ ]

[ 新規に投稿する ]