CurrentFolder関数No.00522
tatuto さん 01/04/10 02:08
 
tatutoです。

現在、新規メールを書くときにフォルダ判定をし
エディタ起動時にアドレス帳を開くマクロを書いています

$folder = dllfunc("CurrentFolder");
で、フォルダウインドウでどのフォルダを選択していても
"未送信"が返ってきます。

報告でした。

[ ]
RE:00522 CurrentFolder関数No.00530
"y.iida" さん 01/04/10 09:02
 
>現在、新規メールを書くときにフォルダ判定をし
>エディタ起動時にアドレス帳を開くマクロを書いています
>
>$folder = dllfunc("CurrentFolder");
>で、フォルダウインドウでどのフォルダを選択していても
>"未送信"が返ってきます。

勘違いだと思います。

Help | エディタ上で実行した場合には、
Help | 現在のエディタが開いているメールのフォルダを返します。

エディタ起動時というのは、エディタを起動してから
エディタ上でマクロ呼び出しの自動実行です。
都合が悪い気もしますけど、これを変えると既存マクロが
動かなくなる人が出ちゃうような気もする?

という事で、自動実行ではダメで、本体から
 $folder = dllfunc("CurrentFolder");
 #n =dllfunc("NewMail");
 $s =dllfuncstr("NewEditorMacro");
 if ($folder == xxxx){
     ・・・・
  }
という事になると思います。

[ ]
RE:00522 CurrentFolder関数No.00553
秀まるお2 さん 01/04/10 10:35
 
> $folder = dllfunc("CurrentFolder");
> で、フォルダウインドウでどのフォルダを選択していても
> "未送信"が返ってきます。

 エディタ上では、そのエディタが今開いているファイルがどのフォルダのファイル
かを返す仕様でして、鶴亀本体で何が選択されているかは関係ありません。

 鶴亀本体側でどのフォルダが選択されているかを知るためには、

    #n = dllfunc("SetMainWndTop");

 などの方法で鶴亀本体をアクティブにした状態で"CurrentFolder"関数を呼び出す
必要があります。

 または、ExecAtを使う手もあります。詳しくはヘルプを参照ください。

[ ]
RE:00530 CurrentFolder関数No.00632
tatuto さん 01/04/11 04:58
 
tatutoです。

"y.iida"<xxxxxxxxxx@maruo.co.jp>さんのメールより適座引用しています。

>勘違いだと思います。
>
>Help | エディタ上で実行した場合には、
>Help | 現在のエディタが開いているメールのフォルダを返します。

確かに勘違いでした。
ヘルプを読み返してみると
よく分かりました (^_^;)

[ ]