[不具合?]マクロ TKinfo.dllについてNo.00999
プックン さん 01/04/16 15:08
 
秀まるおさま
プックンです

ウィンドウの"枠のレイアウト"で
フォルダとメール一覧の2枠区切り、メール内容はエディタでみる。
の設定で使用しているときに、Ver1.06と異なる症状が発生します。

エディタを起動してメールを閲覧 or メール作成中に下記マクロを
実行すると
エラーメッセージ
"鶴亀メール本体ウィンドウ中でしか実行できないTKinfo.dll呼び出しが
おこなわれました。"
というメッセージがでます。

エディタウィンドウがアクティブになっているときのみ発生するようです。
ほかのウィンドウがアクティブになっているときはこのメッセージはでません。

OS:WIN NT
IE:5.00.2919.6307
鶴亀:Ver1.07

//------------------サンプルマクロ--------------------
call Turukame;

if(!dllfunc("IsTuruKameMain")){
//message "本体ちゃうで";
//キーワード定義ファイルの検索
$$mes = "検索文字列を入力してください。\n検索optionは正規表現 ONです" ;
$$str = input( $$mes  );
if( $$str == "" ){
message "検索文字の入力にミスがありました!" ;
goto LEND ;
}
writeinistr $ini, "Turukame", "Find_String", $$str ;
goto LEND;
}

//受信メールがあったか確認する
#num =dllfunc("RecvMailCount");
if(#num == 0){
goto LEND ;
}

LEND:
    freedll;
    endmacro;

Turukame:   //鶴亀メール起動チェック&DLLロード
// modify pukkun 2000.11.07
//秀シリーズサポートHPより 抜粋
    // DLL を Load する
    openreg "CURRENTUSER","Software\\Hidemaruo\\TuruKame\\Config";
    if( !result ) {
    message "鶴亀がインストールされてないです (^^;)\n"+$info;
    closereg ;
    endmacro;
    }

    loaddll "tkinfo.dll";
    if( !result ) {
    message "DLLロードに失敗\n"+$info;
    endmacro;
    }
    return;


[ ]
RE:00999 [不具合?]マクロ TKinfo.dllについてNo.01001
秀まるお2 さん 01/04/16 15:26
 
 なんだか最近、再現しないバグが多いのでなんですが、これまた再現しません。

 鶴亀本体で実行できない関数なら、たぶん"RecvMailCount"が該当すると思うんで
すけど、エディタ上の場合は"IsTuruKameMain"が1を返すので、検索文字列の入力処
理の方へ飛んで、あとは丸く収まってしまいます。

 writeinistr文は$iniが""になっているせいでうまく動いてないと思いますけど。

 一度、message str(dllfunc("IsTuruKameMain")) とやって結果を表示してみるか、
またはRecvMailCountを呼ぶ前にmessage "RecvMailCount";とやってみるとか、原因
か調べて欲しい所です。

[ ]
RE:00999 [不具合?]マクロ TKinfo.dllについてNo.01021
秀まるお2 さん 01/04/16 18:47
 
 ばほさんのマクロをテストしていたら、同じような症状が発生しました。

 どうも、メールを書いている最中に定期受信が動いてマクロ実行された場合に
"RecvMailCount"を使っているとダメみたいです。

 最近いじった処理(アクティブ化に失敗した場合でもマクロ実行は切り替わるよう
にした)のが影響して、dllfunc関数を呼んでるうちに勝手にマクロがエディタ上に
移動してしまうのが原因のようです。なんとか修正させていただきます。

[ ]
RE:01021 [不具合?]マクロ TKinfo.dllについてNo.01023
プックン さん 01/04/16 19:01
 
> 最近いじった処理(アクティブ化に失敗した場合でもマクロ実行は切り替わるよう
>にした)のが影響して、dllfunc関数を呼んでるうちに勝手にマクロがエディタ上に
>移動してしまうのが原因のようです。なんとか修正させていただきます。

デバックしてても、よくわかりませんでした。
秀まるおさんのほうで原因がわかったようなので対応よろしくお願いします。

<参考までに>
writeinistr $ini, "Turukame", "mes1", dllfunc
の行をコメントアウトすると、症状がでるのですが有効にするとなぜか
エラーが発生しませんでした。

//-----------sample---------------
call Turukame;

$file = "puku.ini" ;
$ini = hidemarudir + "\\" + $file ;

//writeinistr $ini, "Turukame", "mes1", dllfunc("IsTuruKameMain");
if(!dllfunc("IsTuruKameMain")){
//message "本体でっせ";
//キーワード定義ファイルの検索
$$mes = "検索文字列を入力してください。\n検索optionは正規表現 ONです" ;
$$str = input( $$mes  );
if( $$str == "" ){
message "検索文字の入力にミスがありました!" ;
goto LEND ;
}
writeinistr $ini, "Turukame", "Find_String", $$str ;
goto LEND;
}

//受信メールがあったか確認する
#num =dllfunc("RecvMailCount");
if(#num == 0){
goto LEND ;
}

LEND:
writeinistr $ini, "Turukame", "Finish", "on" ;
message "";
    freedll;
    endmacro;

Turukame:   //鶴亀メール起動チェック&DLLロード
// modify pukkun 2000.11.07
//秀シリーズサポートHPより 抜粋
    // DLL を Load する
    openreg "CURRENTUSER","Software\\Hidemaruo\\TuruKame\\Config";
    if( !result ) {
    message "鶴亀がインストールされてないです (^^;)\n"+$info;
    closereg ;
    endmacro;
    }

    loaddll "tkinfo.dll";
    if( !result ) {
    message "DLLロードに失敗\n"+$info;
    endmacro;
    }
    return;


[ ]
RE:01021 [不具合?]マクロ TKinfo.dllについてNo.01076
プックン さん 01/04/17 16:11
 
秀まるお様
プックンです

Ver1.08にて修正されていることを確認しました。
対応ありがとうございました。



[ ]