|
Outlok Express風に印刷するマクロを作りました。
そもそもマクロの作成方法がヘルプにもどこにも書いてないので、簡単に作成
方法を紹介させていただきます。
■1.マクロの作成場所を確認する。
鶴亀メールを単品利用してる場合と秀丸エディタと併用してる場合とで、マク
ロの作成場所が違ってきます。
鶴亀メール単品利用してる場合は、マクロ作成場所は、鶴亀メールのプログラ
ム用フォルダです。普通、「C:\Program files\TuruKame」となります。
秀丸エディタを併用してる場合は、秀丸エディタ用のプログラムフォルダとな
ります。普通、「C:\Program files\Hidemaru」となります。
■2.マクロファイルを作成する。
秀丸エディタがあれば秀丸エディタを、そうでない場合はメモ帳を起動します。
起動したら、そこに例えば
message "テスト";
と1行だけ書きます。書いたら、「ファイル・名前を付けて保存...」で、先
ほど確認したマクロ用フォルダに「test.mac」という名前で保存します。
■3.作ったマクロを試し実行
鶴亀メール上の「マクロ・マクロ実行...」を実行します。すると、先ほど保
存した「test.mac」が一覧上に出てくるはずです。出てきたら実行してみます。
■4.マクロ登録
よく使うマクロは、マクロ用のメニューに登録しておくと便利です。マクロ・
マクロ登録...」で、例えば「マクロ1:」の所に、タイトルは「テスト」、ファ
イル名には「test.mac」と入れて登録すれば、後は「マクロ」のメニューから一
発でマクロ起動できます。
------------------
でもって、肝心のOutlook Express風印刷マクロは以下の通りです。いわゆる
カットアンドペーストの操作で以下の内容のマクロを作成するなどしてください。
分からなければ、具体的にどういう時点でつまずいてるか、どういうエラーメッ
セージが出るかなど連絡ください。
-----Outlook Express風印刷マクロ
loaddll "tkinfo.dll";
#n = dllfunc("OpenMail");
if( #n == 0 ) {
message "メールをエディタで開こうとして失敗しました。";
}
#hv = dllfunc("HeaderView");
if( #hv != 1 ) {
#n = dllfunc("SetHeaderView", 1);
}
#n = dllfunc("EnableEdit");
// Date:ヘッダを日本語に整形する。
$date = dllfuncstr("CurrentHeader", "Date:");
$date = dllfuncstr("FormatDate", $date, "YYYY年M月D日 hh:mm");
moveto 0, -9999;
searchdown2 "Date:";
if( result && (colorcode & 0x1F) != 0 ) {
moveto 0, y;
beginsel;
golineend2;
golinetop;
down;
delete;
}
moveto 0, -1;
insert "Date: " + $date + "\n";
// 添付ファイルの一覧を入れる。
#i = 0;
while(1) {
$attach = dllfuncstr("CurrentHeader2", "X-Attach:", #i);
if( $attach == "" ) break;
message $attach;
#xPrev = -1;
while(1) {
#x = strstr( midstr( $attach, #xPrev + 1, 300 ), "\\" );
if( #x < 0 ) break;
#xPrev = #xPrev + #x + 1;
}
$attach = midstr( $attach, #xPrev + 1, 300 );
insert "添付: " + $attach + "\n";
#i = #i + 1;
}
//印刷
openreg "CLASSESROOT",
"CLSID\\{3790E08E-DA26-41E2-B6B7-A2C2DED41C2F}\\InprocServer32";
$path = getregstr("");
closereg;
if( $path == "" ) {
message "秀丸パブリッシャーがインストールされてません。";
endmacro;
}
loaddll $path;
#n = dllfunc("PrintDialog", hidemaruhandle(0), 0, 0, 0, 0, 1, 0 );
|
|