巡回終わると画面が変わる?No.03875
cuma さん 01/09/15 14:04
 
複数のアカウントを巡回している間に待ちきれずに、どこかのアカウントのメールを
閲覧していると、巡回完了時点で他のアカウントのメールが表示されてしまって、閲
覧中だった作業が中断されてしまいます。
どこかの設定で回避出来るのでしょうか(逆に私が何か設定した?)?
アドバイス宜しくお願い致します。

[ ]
RE:03875 巡回終わると画面が変わる?No.03882
きいろいまふらあ さん 01/09/15 16:46
 
>複数のアカウントを巡回している間に待ちきれずに、どこかのアカウントのメールを
>閲覧していると、巡回完了時点で他のアカウントのメールが表示されてしまって、閲
>覧中だった作業が中断されてしまいます。

「受信が一段落したとき」にそんなマクロを実行されているのでは?

[ ]
RE:03882 巡回終わると画面が変わる?No.03883
cuma さん 01/09/15 17:31
 
ピンポンでした。
受信一段落したら、特定フォルダの新着メールを転送するマクロがありました。
よく見たら巡回終了時には、その転送対象のフォルダにフォーカスが移動するようで
す。
このマクロは重宝しているので外せないので困りました。
巡回完了してからメールを閲覧するしか無いですね。

[ ]
RE:03883 巡回終わると画面が変わる?No.03885
ひろ さん 01/09/15 23:16
 
 cuma さん今日は、ひろです。
> 受信一段落したら、特定フォルダの新着メールを転送するマクロがありました。
if((dllfunc("IsTrayIcon") == 1 && dllfunc("MainWnd") == 0) ||
  dllfunc("IsIcon") == 1){//本体を閉じているか、最小化している時だけ処理
}
等を利用して、状況によってマクロだ実行されない、若しくは実行しても表
示メールを元に戻るようにすればようにすればよいと思います。

[ ]
RE:03885 巡回終わると画面が変わる?No.03889
cuma さん 01/09/16 06:07
 
ひろさん ありがとうございます。

>等を利用して、状況によってマクロだ実行されない、若しくは実行しても表
>示メールを元に戻るようにすればようにすればよいと思います。

実際の使用状況からは鶴亀が最小化している時は少ないので、表示メールを元に戻す
方法が一番私に会うようです。

せっかく、最小化時のチェック処理をご教授頂いたのですが、元に戻す方法が簡単な
場合はその方法で行ければなお幸いです。

[ ]
RE:03889 巡回終わると画面が変わる?No.03892
ひろ さん 01/09/16 12:58
 
 cuma さん今日は、ひろです。
> せっかく、最小化時のチェック処理をご教授頂いたのですが、元に戻す方法が簡単な
> 場合はその方法で行ければなお幸いです。
 あまり簡単ではありませんが、
//-------------------------------------------------------------------
loaddll "tkinfo.dll";
openreg "CURRENTUSER","Software\\Hidemaruo\\TuruKame\\Config";
if(result){
  //フォルダを開いた時の動きを保存
  ##AutoCollapse = getregnum("AutoCollapse");
  ##AutoSelectUnread = getregnum("AutoSelectUnread");
  //フォルダを開いた時、元の選択状態と変わらないようにする
  writeregnum "AutoCollapse",0;
  writeregnum "AutoSelectUnread",0;
}
else{
  message "レジストリオープン失敗";
  endmacro;
}

##main = dllfunc("MainWnd");
#tmp = dllfunc("ExecAt",##main,"EnvChanged");
//現在のアカウント、フォルダの保存
$$account = dllfuncstr("ExecAt",##main,"CurrentAccount");
$$folder = dllfuncstr("ExecAt",##main,"CurrentFolder");
//フォルダを移動して、自分を行いたい処理はこの部分
if(!dllfunc("ExecAt",##main,"SelectFolder",$$account,$$folder))goto Error;
goto Ending;

Error://エラーの処理
  message "DLL 関数失敗";
Ending://設定を元に戻し、終了
  writeregnum "AutoSelectUnread",##AutoSelectUnread;
  writeregnum "AutoCollapse",##AutoCollapse;
  #tmp = dllfunc("ExecAt",##main,"EnvChanged");
  closereg;
  freedll;
  endmacro;

[ ]
RE:03892 巡回終わると画面が変わる?No.03893
cuma さん 01/09/16 14:22
 
ひろさん、結構複雑なマクロを済みませんでした。
このマクロなのですが、起動契機は「受信が一段落した時」に入れておけば良いでし
ょうか?ただ、既に1つのマクロがそのタイミングなので、元の自動転送するマクロ
より先に今回のマクロと言う感じで良いでしょうか?

[ ]
RE:03893 巡回終わると画面が変わる?No.03894
ひろ さん 01/09/16 15:58
 
 cuma さん今日は、ひろです。
> このマクロなのですが、起動契機は「受信が一段落した時」に入れておけば良いでし
> ょうか?
 使い方によるので、私には何とも言えません。

> ただ、既に1つのマクロがそのタイミングなので、元の自動転送するマクロ
> より先に今回のマクロと言う感じで良いでしょうか?
 後でも先でもダメです。
 既に使っているマクロを書き換え、
> $$folder = dllfuncstr("ExecAt",##main,"CurrentFolder");
> //フォルダを移動して、自分を行いたい処理はこの部分
> if(!dllfunc("ExecAt",##main,"SelectFolder",$$account,$$folder))goto Error;
このコメント部分に該当する部分を入れるか、
$$folder = dllfuncstr("ExecAt",##main,"CurrentFolder");
execmacro "受信が一段落した時.mac";
if(!dllfunc("ExecAt",##main,"SelectFolder",$$account,$$folder))goto Error;
として、「受信が一段落した時」のマクロをこれに入れ換えてください。

[ ]
RE:03894 巡回終わると画面が変わる?No.03895
cuma さん 01/09/16 17:51
 
ひろさん こんばんは

>$$folder = dllfuncstr("ExecAt",##main,"CurrentFolder");
>execmacro "受信が一段落した時.mac";
>if(!dllfunc("ExecAt",##main,"SelectFolder",$$account,$$folder))goto Error;
>として、「受信が一段落した時」のマクロをこれに入れ換えてください。

こちらの方式でやってみました。
「DLLがロードされてないのにdllfuncが起動されました」
とのエラーが出てしまいます。

マクロ一行目にある
loaddll "tkinfo.dll";
の事でしょうか?

何度も申し訳ございません。もし初心者に無理な事だった場合は、何回も何回もで申
し訳ないので、少し時間を置いて将来的に継続してみたいと思います。

[ ]
RE:03895 巡回終わると画面が変わる?No.03896
ひろ さん 01/09/16 22:50
 
 cuma さん今日は、ひろです。
 引用順序を変えました。
> 「DLLがロードされてないのにdllfuncが起動されました」
> とのエラーが出てしまいます。
の原因は、おそらく
> >$$folder = dllfuncstr("ExecAt",##main,"CurrentFolder");
> >execmacro "受信が一段落した時.mac";
             ^^^^^^^^^^^^^^^^^^^^^^^^
のマクロで、freedll を使用しているからでしょう。
$$folder = dllfuncstr("ExecAt",##main,"CurrentFolder");
execmacro "受信が一段落した時.mac";
loaddll "tkinfo.dll";
if(!dllfunc("ExecAt",##main,"SelectFolder",$$account,$$folder))goto Error;
とすれば良いでしょう。

> もし初心者に無理な事だった場合
 私の好い加減な書き込みがご理解頂けているので、cuma さんは「初心者」
と呼ばれるレベルではないと思います(^^)。
 私も hidesoft.8 なら別の書き込み方をしたでしょうね。

[ ]
RE:03896 巡回終わると画面が変わる?No.03897
cuma さん 01/09/17 05:34
 
ひろさん、おはようございます。
おかげさまで大成功でした。最後までおつき合い頂きまして非常に助かりました。

[ ]