マクロからHTMLメールViewerの印刷プレビNo.01044
ひろ坊 さん 17/02/13 14:44
 
いつも質問ばかりですみません。
マクロからHTMLメールViewerの印刷プレビュー表示は可能でしょうか?
設定で「印刷コマンドでプレビュー表示」をオンにしていても
マクロの印刷コマンドからは動かないように思います。

#n = sendmessage( hidemaruhandle(0), 0x111, 40119, 0);

もしマクロから直接htmlの印刷プレビューを表示する方法があれば教えてください。

[ ]
RE:01044 マクロからHTMLメールViewerの印No.01046
秀まるお2 さん 17/02/13 15:37
 
 sendmessageの場合だと、互換性(秀丸エディタで印刷コマンド実行した場
合)を優先する作りになってる関係で、秀丸エディタの印刷コマンドが実行され
てしまうようです。

    loaddll "tkinfo.dll";
    #n = dllfunc("Bypass_PostMessage", hidemaruhandle(0), 0x111, 40119, 0);


 としたら、一応うまく「ファイル - 印刷」相当になりました。ただし、HTML
メールViewerが保護モードになってるとエラーになってしまうので、保護モード
をOFFにしておかないとダメです。

[ ]
RE:01046 マクロからHTMLメールViewerの印No.01050
ひろ坊 さん 17/02/14 08:28
 
ありがとうございます。マクロ内でも「ファイル - 印刷」相当の動きができました。
ただマクロ内で、htmlインライン表示など前後に処理を入れようとすると、印刷のコ
ントロールが難しくなりそうです。いろいろ試してみます。

#n = sendmessage( hidemaruhandle(0), 0x111, 40336, 0);
message "確認";
#n = dllfunc("Bypass_PostMessage", hidemaruhandle(0), 0x111, 40119, 0);

[ ]
RE:01050 マクロからHTMLメールViewerの印No.01051
秀まるお2 さん 17/02/14 08:43
 
 いろいろ試していただくにしても、他にはいい作戦が無いように思います。

 HTMLメールViewerが保護モードになってると一発で印刷が出来ない点も含めて、
何かHTMLメールを印刷できる用の関数追加など考えてみます。

 今日アップロードするβ版の次のβ版で対応したいと思います。それまでお待
ちください。

[ ]
RE:01051 マクロからHTMLメールViewerの印No.01054
ひろ坊 さん 17/02/14 13:01
 
ありがとうございます。
よろしくお願いします。

[ ]
RE:01051 マクロからHTMLメールViewerの印No.01059
ひろ坊 さん 17/02/15 19:02
 
マクロからの印刷関連で、秀丸メール本体からマクロを実行して、秀丸パブリッ
シャーなどでhtmlではない通常の印刷をするとファイル名にメールタイトルが入
りません。メールエディタからの実行だとメールタイトルが入るので、違いが以
前少し気になりました。個人的には利用していない機能ですが、マクロ関連の印
刷の更新の際に一度ご確認いただけたらと思います。仕様であれば申し訳ありま
せん。

[ ]
RE:01059 マクロからHTMLメールViewerの印No.01060
秀まるお2 さん 17/02/16 11:05
 
 今ちょっとテストした限りはファイル名相当の所にメールのタイトルが出ない
ことは無さそうでしたけども、何か他に再現の条件があるのかもしれません。

 とりあえず、本文BOXの中での「本文BOX内でファイル名印刷」と、BOX1として、
TEXT=filenameまたはTEXT=basenameとした所には一応うまく印刷されるようでし
た。

 エディタ上で印刷すると、[未読]みたいな余計なのが出てくるようで、この辺
の処理がエディタと本体で違うというのはあるようです。一回この辺見直してみ
ます。

[ ]
RE:01060 マクロからHTMLメールViewerの印No.01061
ひろ坊 さん 17/02/16 13:15
 
すいません、勘違いと説明不足がありました。
印刷テンプレートで
本文BOX 「本文BOX内でファイル名印刷」on
BOX1 TEXT=filename
として

(1)
loaddll "tkinfo.dll";
#n = dllfunc("Bypass_PostMessage", hidemaruhandle(0), 0x111, 40119, 0);

(2)
loaddll "hidemaruapi.dll";
#n = dllfunc("PrintDialog", hidemaruhandle(0), "メール印刷", 0,0,0,0,1);


(1)は問題なくタイトルが表示されました。
(2)を本体から実行すると
本文BOXではファイル名が表示されず、
BOX1は「-ツ」と表示されます。
2ページ以上ある場合にスクロールすると、
BOX1の表示が「 ob」に変わりました。
(2)の場合もエディタからはタイトルが表示されています。
ただし、エディタからの印刷だと頭に[未読][マーク]などがついています。
ご参考になれば幸いです。

[ ]
RE:01061 マクロからHTMLメールViewerの印No.01062
秀まるお2 さん 17/02/16 14:02
 
 こちらのテスト方法が少し間違ってました。

 実は手元のβ版では

 #n = sendmessage( hidemaruhandle(0), 0x111, 40119, 0);

 とやるだけで普通の印刷(ファイルメニューの印刷コマンド実行)とまったく
同じ動作になるように修正してまして、それでテストしてました。

 PrintDialog呼び出しにしてみたら、おかしい現象が再現できました。大変失
礼しました。

 今から原因究明&修正します。


[ ]