マクロで送受信と全般的な設定No.01717
ポン太 さん 01/05/23 13:19
 
初めまして。ポン太 といいます。
しばらく前から鶴亀メール使ってます。(^^)
今日秀ネットに入会させていただきました。

早速ですが質問です。(^_^;

前提条件
 1.接続環境はアナログモデムのダイアルアップ。
 2.アカウントはニフティ1つとその他1つ、計2つ。
 3.一度のダイアルアップで、メールの送受信とAirCraftによるニフティの巡回を
したい(AirCraftはTELNET接続)。
 4.鶴亀メールの全体的な設定のダイアルアップ接続の設定は、接続の方は「鶴亀
メール側で・・・」で、切断の方は「切断する」としたい。

という条件を満たすマクロを書いてみました(二重ログインを防ぐため送受信と Air
Craft は平行に動作させられない)。

loaddll "tkinfo.dll";
#n = dllfunc("Dialup","xxxx");
if (#n) {
#n = dllfunc("TransmitAll");//(*)

runsync2 "E:\\AirCraft\\AirCraft.exe -A -B -dt -p0 -r -e -x";

#n = dllfunc("Hangup");
if (!#n) {
message "切断できませんでした!";
endmacro;
}
}
else
{
message "接続できませんでした!";
endmacro;
}

まだ動かしていませんが(^_^;、ここで心配なのは前提条件4の結果 TransmitAll で
回線切断されてしまわないかということです。もし切断されるとしたら、他に良い方
法がありますか?

手動で送受信した場合の回線断のし忘れを考えて、鶴亀の設定そのものを変えるのは、
できればさけたいのですが。

[ ]
RE:01717 タブは飛んじゃうのね(^_^;No.01718
ポン太 さん 01/05/23 13:42
 
マクロを秀丸からコピー、ブラウザへペーストしたら、タブが飛んじゃいました。(^_^;

見難いソースでごめんなさい。m(_ _)m

ポン太

[ ]
RE:01717 マクロで送受信と全般的な設定No.01719
秀まるお2 さん 01/05/23 16:23
 
 実際に確認した訳ではないですが、「全般的な設定・ダイヤルアップ接続」
で「切断する」にしているなら、TransmitAllで切断してしまうはずです。切
断しないようにする方法はありません。

 鶴亀メールのTransmitAllをやる前にAirCraftの巡回を済ませる訳にはいか
ないのやら?。

 そういえば、鶴亀メールの「全般的な設定」をレジストリから読み込み直す
関数を追加して欲しいという要望があります。

 もしそれをサポートすれば、例えば

    openreg "CURRENTUSER", "Software\\Hidemaruo\\TuruKame\\Config";
    #prev = getregnum( "LeaveDialup" );
    writeregnum "LeaveDialup", 1;
    #n = dllfunc("EnvChanged");
    #n = dllfunc("TransmitAll");
    writeregnum "LeaveDialup", #prev;
    closereg;

 とすればいいようになるはずです。

 ってことで、さっそくEnvChanged関数を作ります。

[ ]
RE:01719 マクロで送受信と全般的な設定No.01721
ポン太 さん 01/05/23 16:43
 
>断しないようにする方法はありません。

ありゃ。(^_^;


> 鶴亀メールのTransmitAllをやる前にAirCraftの巡回を済ませる訳に
>はいかないのやら?。

「対象アカウントを毎回選択する」のチェックも外したくないもんで、
AirCraftの巡回が先だと、TransmitAllでいったん止まっちゃいますよね。TransmitA
llが先だと、マクロの起動→OKで切断までは自動化できるかと。


> もしそれをサポートすれば、例えば
<中略>
> ってことで、さっそくEnvChanged関数を作ります。

よろしくお願いします。m(_ _)m

[ ]
RE:01719 マクロで送受信と全般的な設定No.01723
ひろ さん 01/05/23 17:35
 
 秀まるおさん、皆さん今日は、ひろです。
>  実際に確認した訳ではないですが、「全般的な設定・ダイヤルアップ接続」
> で「切断する」にしているなら、TransmitAllで切断してしまうはずです。切
> 断しないようにする方法はありません。
 マクロ内でいきなり TransmitAll 関数等を使用した結果、ダイアルアッ
プする場合は致し方ありませんが、今回ぽんたさんが作ったマクロのように、
Dialup 関数を使用した場合は Hangup 関数があるので、設定に関わり無く
自動切断しない方が良い (自由度が高まる) と思うのですが、皆さんはどう
思われますか?
 現在どの様な仕様になっているか不分明ですが、反対がなければ、上記の
ような仕様変更を希望します。

[ ]
RE:01721 マクロで送受信と全般的な設定No.01724
ひろ さん 01/05/23 17:35
 
 ポン太さん今日は、ひろです。
> 「対象アカウントを毎回選択する」のチェックも外したくないもんで、
> AirCraftの巡回が先だと、TransmitAllでいったん止まっちゃいますよね。
 runsync(2) を使っている以上、AirCraft が終了するまでマクロは待機状
態になりますが、TransmitAll で止まることは無いと思います。

[ ]
RE:01724 マクロで送受信と全般的な設定No.01728
ポン太 さん 01/05/23 17:50
 
こんにちは。ポン太です。


>態になりますが、TransmitAll で止まることは無いと思います。

「対象アカウントを毎回選択する」にチェックが入っていると、
TransmitAllやメニューから「すべてを送受信」を実行すると、当然ですが対象アカ
ウントを選択するダイアログが出ますよね。
あれのことです。

[ ]
RE:01723 マクロで送受信と全般的な設定No.01730
秀まるお2 さん 01/05/23 18:02
 
 今ちょうどEnvChangedが完成した所です。あと、以前要望されていた
MakeFolder/DeleteFolder/RefreshMailListなんかも作りました。

>  現在どの様な仕様になっているか不分明ですが、反対がなければ、上記の
> ような仕様変更を希望します。

 しいて、ダイヤルアップ関係の設定を無視するような動作をさせるなら、新
たにTransmitAllCustom等の(XXXXCustom)系としないと混乱すると思います。

 TransmitAll以外にもReceiveやらSendRemainやらいろいろ全部Custom版を用
意するのも面倒なので、やっぱりEnvChangedを使ってもらうことにします。

[ ]
RE:01728 マクロで送受信と全般的な設定No.01744
ひろ さん 01/05/24 12:06
 
 ポン太さん今日は、ひろです。
> 「対象アカウントを毎回選択する」にチェックが入っていると、
> TransmitAllやメニューから「すべてを送受信」を実行すると、当然ですが対象アカ
> ウントを選択するダイアログが出ますよね。
 これは AirCraft との順序とは関係ないのでは?

[ ]
RE:01730 マクロで送受信と全般的な設定No.01745
ひろ さん 01/05/24 12:06
 
 秀まるおさん今日は、ひろです。
>  今ちょうどEnvChangedが完成した所です。あと、以前要望されていた
> MakeFolder/DeleteFolder/RefreshMailListなんかも作りました。
 まず、追加して頂き有り難うございました。

>  TransmitAll以外にもReceiveやらSendRemainやらいろいろ全部Custom版を用
> 意するのも面倒なので、やっぱりEnvChangedを使ってもらうことにします。
 そうですね。既に EnvChanged が追加されるので、この関数で対処します。

[ ]
RE:01744 マクロで送受信と全般的な設定No.01747
ポン太 さん 01/05/24 12:44
 
ひろさん、こんにちは。ポン太です。

> これは AirCraft との順序とは関係ないのでは?

アカウントを選択するダイアログが出るのはどちらも同じなのですが、

            マクロの実行
            ダイアルアップ
アカウント選択で「OK」       AirCraft巡回
メール送受信             アカウント選択で「OK」
AirCraft巡回             メール送受信
            回線切断
(注:TransmitAllをアカウント選択で「OK」とメール送受信の
2つに分けて書いています)

という流れで、左の場合は人が介在するのが、マクロの実行から「OK」
を押すまでの最初に集中しているのに比べて、右の流れの場合は、
AirCraftの巡回が終わるまでその場にいて、「OK」を押す必要があり
ます。
AirCraftの巡回が終わるまでその場にいるのなら、マクロを作らずに、
手動で鶴亀の送受信をやっています。

EnvChangedが実装されたバージョンが公開されれば、アカウント選択で
「OK」も押す必要がなくなり、どちらでも良くなるのですけどね。

[ ]
RE:01747 マクロで送受信と全般的な設定No.01760
ひろ さん 01/05/24 15:34
 
 ポン太さん今日は、ひろです。
> 左の場合は人が介在するのが、マクロの実行から「OK」
> を押すまでの最初に集中しているのに比べて、右の流れの場合は、
> AirCraftの巡回が終わるまでその場にいて、「OK」を押す必要があり
 理解できました。

> EnvChangedが実装されたバージョンが公開されれば、アカウント選択で
> 「OK」も押す必要がなくなり、どちらでも良くなるのですけどね。
 次版が楽しみですね。

[ ]