一個NewMailしたら、ウィンドウを閉じたいNo.00615
meshilog さん 05/05/02 15:46
 
鶴亀メールのマクロで数百の新規メールを作りたいです。
1点障害になっている点があるので質問です。

以下のようなマクロなのですが、
一個NewMailしたら、ウィンドウを閉じたいです(マクロは続行させたまま)。
開けるウィンドウの限界値があるみたいなので。

やり方を教えてください。

loaddll ”tkinfo.dll”;
#a = dllfunc( ”NewMail” );
gofiletop;
selectall;
delete;
insert ”From: a@a.a.a¥n”;
insert ”To: b@b.b.b¥n”;
insert ”Subject: 2/19(土:朝)¥n”;
insert ”2005/02/19 09:53:10¥n”;
insert #n;
#n = dllfunc(”SaveDraft2”, ”meshilog”);

#a = dllfunc( ”NewMail” );
gofiletop;
selectall;
delete;
insert ”From: a@a.a.a¥n”;
insert ”To: b@b.b.b¥n”;
insert ”Subject: 2/20(土:朝)¥n”;
insert ”2005/02/19 09:53:10¥n”;
insert #n;
#n = dllfunc(”SaveDraft2”, ”meshilog”);

[ ]
RE:00615 一個NewMailしたら、ウィンドウNo.00616
Iranoan さん 05/05/02 16:09
 
 meshilog さん今日は、Iranoan です。
> #a = dllfunc( ”NewMail” );
<snip>
> #n = dllfunc(”SaveDraft2”, ”meshilog”);
の部分を、
#main = hidemaruhandle( 0 );
#i = 0;
while( #i < 100 ){
  #a = dllfunc( "NewMail" );
  #sub = hidemaruhandle( 0 );
<snip>
  #n = dllfunc("SaveDraft2", "meshilog");
  #i = #i + 1;
  closehidemaru #sub;
  setactivehidemaru #main;
}
の要領で、一旦メインなどの呼び出し元をアクティブにしてから、作成した
メールのエディタ・ウィンドウを閉じてやればよいです。

 P.S 他にも方法はありますが、ここでは割愛します。

[ ]
RE:00616 一個NewMailしたら、ウィンドウNo.00617
meshilog さん 05/05/02 22:12
 
ご回答ありがとうございます!
下記マクロを走らせてみたのですが、
ウィンドウが14個開いた時点で
「ウィンドウの数が多すぎるので開くことができません」
と表示されて、鶴亀ごと落ちてしまいます。。。

>>
loaddll "tkinfo.dll";

#main = hidemaruhandle( 0 );
#i = 0;
while( #i < 100 ){
  #a = dllfunc( "NewMail" );
  #sub = hidemaruhandle( 0 );

  #n = dllfunc("SaveDraft2", "meshilog");
  #i = #i + 1;
  closehidemaru #sub;
  setactivehidemaru #main;
}
<<






> meshilog さん今日は、Iranoan です。
>> #a = dllfunc( ”NewMail” );
><snip>
>> #n = dllfunc(”SaveDraft2”, ”meshilog”);
>の部分を、
>#main = hidemaruhandle( 0 );
>#i = 0;
>while( #i < 100 ){
>  #a = dllfunc( "NewMail" );
>  #sub = hidemaruhandle( 0 );
><snip>
>  #n = dllfunc("SaveDraft2", "meshilog");
>  #i = #i + 1;
>  closehidemaru #sub;
>  setactivehidemaru #main;
>}
>の要領で、一旦メインなどの呼び出し元をアクティブにしてから、作成した
>メールのエディタ・ウィンドウを閉じてやればよいです。
>
> P.S 他にも方法はありますが、ここでは割愛します。

[ ]
RE:00617 一個NewMailしたら、ウィンドウNo.00618
三月 さん 05/05/02 22:43
 
loaddll "tkinfo.dll";

#main = hidemaruhandle( 0 );
#i = 0;
while( #i < 100 ){
  #a = dllfunc( "NewMail" );
  #sub = hidemaruhandle( 0 );

  #n = dllfunc("SaveDraft2", "meshilog");
  #i = #i + 1;
  setactivehidemaru #main;
  closehidemaru #sub;
}

のように、setactivehidemaru と closehidemaru の順番を入れ替えると動きますね。

closehidemaru するときに、閉じるウインドウがアクティブなので
閉じれないようです。

鶴亀が落ちるのは問題ありでしょうけど。

[ ]
RE:00618 一個NewMailしたら、ウィンドウNo.00619
Iranoan さん 05/05/02 23:40
 
 meshilog さん、三月さん今日は、Iranoan です。
> のように、setactivehidemaru と closehidemaru の順番を入れ替えると動きますね。
 確かにそうしないと意味がありませんね。
→ゴメンナサイ meshilog さん

> 鶴亀が落ちるのは問題ありでしょうけど。
 ですね。
 dump.txt が出来ているでしょうから、「************」で始まる行より少
し前の部分からを転載して、http://www.maruo.co.jp/turukame/1/ に別途報
告した方が良いかもしれませんね。


[ ]
RE:00619 一個NewMailしたら、ウィンドウNo.00620
Iranoan さん 05/05/07 18:56
 
 今日は、Iranoan です。
> http://www.maruo.co.jp/turukame/1/ に別途報
> 告した方が良いかもしれませんね。
 私も再現したので、報告しておきました。


[ ]