マクロでHTMLメール編集への切り替えがうNo.03209
Egg さん 10/08/12 14:03
 
V5.55b9
V1.00b9

なんの加減が解からないですが、b9より
新規メールが以下のマクロでHTMLメール編集にうまく切替らない場合があります。

loaddll "tkinfo.dll";
#n = dllfunc("HtmlEdit");

※こんなふうになる。
-----------------------------------------------------------
<HTML><HEAD>
<META content="MSHTML 6.00.2900.5969" name=GENERATOR></HEAD>
<BODY></BODY></HTML>
------------------------------------------------------------


※表示⇒HTMLメール編集で切り替えるとこうなる。
-----------------------------------------------------------------------
<HTML><HEAD>
<META http-equiv=Content-Type content="text/html; charset=iso-2022-jp">
<STYLE>
<!--
body{font-family:MS Pゴシック;font-size:11pt}
-->
</STYLE>

<META content="MSHTML 6.00.2900.5969" name=GENERATOR></HEAD>
<BODY>
<DIV>&nbsp;</DIV>
<DIV></DIV></BODY></HTML>
-----------------------------------------------------------------------


少なくともb8までは、
表示⇒HTMLメール編集で切り替えるとの同じだった気がします。

確認の程宜しく御願いします。

[ ]
RE:03209 マクロでHTMLメール編集への切りNo.03210
秀まるお さん 10/08/12 14:54
 
 こちらで簡単にテストした限りはうまく再現しないようです。


 「新規メール」を実行して、メール本文を完全にカラにしてから

        loaddll "tkinfo.dll";
        #n = dllfunc("HtmlEdit");

 のマクロを実行して、それからソースを確認するために、「表示・HTMLメール
編集」を実行し、「普通のテキスト形式に変換しますか?」で「いいえ」と答え
ると、<style>タグ入りの普通のテキストが出てきました。

 β9になってから、ちょっと方式を変えた所があります。一度エディタ・ウィ
ンドウを起動して、そこでHTMLメール編集アドインを起動して、エディタを終了
した時に、β8までは、HTMLメール編集アドイン用のウィンドウを破棄してまし
た。β9からは、ウィンドウは破棄せずに裏でとっておいて、次回エディタが起
動してHTMLメール編集モードになった時に、裏でとっておいてウィンドウを再利
用するようにしました。

 なので、β9からおかしくなったとしたら、例えばそういう再利用が働くケー
ス、つまり、エディタを一度閉じてまた起動した時に動作が変わるということな
のかなぁと思いますけど、そういうのはどうでしょ?

 あと、β8から変えた所もあります。WebBrowserコントロールに渡すデータで
すが、β7までは、いわゆるJavaScriptでのdocument.write()相当の処理でデー
タを渡してましたが、β8からは、一時ファイルに内容を入れた上で、そのファ
イルを開くということでデータを渡すようにしました。

 それも関係してるかもしれませんけども…。

 とりあえず再現方法がいまいち分からない所です。

 マクロとしては例えば以下のマクロを実行した時に、「おかしい」のメッセー
ジが出るということでしょうか。

------------------------------------------------
loaddll "tkinfo.dll";
#n = dllfunc("NewMail");
#n = dllfunc("HtmlEdit");
#n = dllfunc("HtmlEdit", "offonly");
gofiletop;
searchdown "<style>", nocasesense;
if( !result ) {
    message "おかしい";
}
------------------------------------------------

[ ]
RE:03210 マクロでHTMLメール編集への切りNo.03211
Egg さん 10/08/12 17:23
 
作成頂いたまくろで"おかしい"のメッセージはでなかったです。

すみません。
色々と確認して、どうも手順が違ったというか簡単に説明しようとして
マクロをいじづてしまったのがよくなかったようです(多分)

以前秀丸殿に下記の通常⇒HTML⇒通常を一つで出来るマクロを作って頂きました。

このマクロをエディタ側に登録して、新規メール通常⇒HTML⇒通常⇒HTMLと
何度か繰り返した後×で終了します。
もう一度新規メール通常⇒HTMLとこのマクロで実行すると、文字が
“Times New Roman”となると思うのですが・・・

最近再現しない場合が多く(僕の所では再現しますが・・・)
恐縮ですが確認下さい。
---------------------------------------------------
loaddll "tkinfo.dll";
    if( dllfunc("IsHtmlMailViewerVisible") ) {
        #n = dllfunc("HtmlEdit", "offonly");
    } else {
        #n = dllfunc("HtmlEdit");
    }
----------------------------------------------------

[ ]
RE:03211 マクロでHTMLメール編集への切りNo.03212
秀まるお さん 10/08/12 18:07
 
 テストしてたら別のバグを見つけてしまいました。

 そのバグ修正も含めて…

 とりあえず、β9でいじった処理がおかしいことは間違いないと思うので、そ
の辺なんとか別の方式というか、元に戻しつつメモリリークしないようなやり方
が出来ないか考えてみます。

 (WebBrowserコントロールをDestroyWindowするとなぜだかメモリリークして
しまうので困っています。HTMLメールViewerではそうならないんだけども…)

[ ]
RE:03212 マクロでHTMLメール編集への切りNo.03214
Egg さん 10/08/12 20:55
 
スミマセン毎度お手数をお掛けしますが、宜しく御願いします。

>WebBrowserコントロールをDestroyWindowするとなぜだかメモリリークして
>しまうので困っています。
これって秀丸殿の問題ではなくて、Windows側の問題ですよね(多分)

[ ]
RE:03214 マクロでHTMLメール編集への切りNo.03216
秀まるお さん 10/08/12 23:28
 
> これって秀丸殿の問題ではなくて、Windows側の問題ですよね(多分)

 WebBrowserコントロールのバグかと思ったんですけど、HTMLメールViewerでは
メモリリークしないです。

 WebBrowserコントロールの使い方が悪いということなんですが…。

 で、いろいろ苦労して、今やっと、DestroyWindowしてもメモリリークしない
ようになったと思います。

 ということでまたしばらくテストして、明日にでもβ版アップロードさせてい
ただきます。

[ ]
RE:03216 マクロでHTMLメール編集への切りNo.03218
Egg さん 10/08/13 17:12
 
v5.50b10
v1.00b10

色々とお手数を掛けてます。

先ず結果ですが、
(もっと)及びウィンドウを再利用するの両方をOFFにする事で、
通常エディタ⇔HTMLメール編集をマクロで切り替えても問題なく
動作します。

ちょっと気になったのですが、両方ON或いはウィンドウを再利用する
のみONにすると、マクロを使わなくても、表示(メニュー)の
HTMLメール編集から通常⇔HTMLを何度か切り替えると、HTMLメール編集画面の
メニュー、ツールバー、FROM〜Bccまで画面が白くなってしまいます。

※取り合えず両方OFFにて使用させて頂きます。

[ ]
RE:03218 マクロでHTMLメール編集への切りNo.03219
秀まるお さん 10/08/13 17:53
 
 とりあえずこちらのWindowsXP 64bitマシン上で、32bit版/64bit版秀丸メー
ルでテストした限りは大丈夫みたいではありました。

 IEのバージョンも関係してるかもしれないので、他のマシンでもいろいろテス
トしてみます。

[ ]
RE:03219 マクロでHTMLメール編集への切りNo.03220
秀まるお さん 10/08/13 17:59
 
 あと、画像データもわざわざ送っていただいてありがとうございます。たしか
に現象が理解出来ました。

[ ]
RE:03219 マクロでHTMLメール編集への切りNo.03221
秀まるお さん 10/08/13 18:03
 
 Windows2000マシンでテストしたら一発で起きました。

 とにかく修正させていただきます。

[ ]
RE:03221 マクロでHTMLメール編集への切りNo.03223
Egg さん 10/08/14 15:40
 
5.50b11
1.00b11
XP−IE6

ウインドウを再利用する(K)をONにして、表示⇒HTMLメール編集で標準⇔HTMLを
何度も繰り返し。一度終了してまた同じ操作を繰り返し確認しました。
また同様の確認をマクロから行いました。

次にウインドウを再利用するをON、もっとをONにして上記と同様の表示から
マクロからの確認を何度も実施しました。

結果すべて正常に動作します。
(文字が変わったり、画面が白くなったりは発生しませんでした)


“ウインドウを再利用”と“もっと”の両方をONにして
しばらく使わせて頂きます。

毎度お手数をお掛けしました。
どうも有り難う御座います。

[ ]
RE:03223 マクロでHTMLメール編集への切りNo.03224
秀まるお さん 10/08/15 22:59
 
 わざわざテストありがとうございます。

[ ]