マクロでアカウント内の未読メール数を取No.03178
さん 18/04/13 10:34
 
 こんにちは、お世話になります。

 マクロでアカウント以下の未読メール数を調べたいと考えているんですが、うまい
方法が思いつかずにいます。
 「tkinfo.dll」をロードしたあと、

dllfunc("GetFolderMailCount", "", "", "unread");

とすればよいような気もしたんですが、そもそも選択しているのがフォルダではなく、
アカウントなので、0が返ってきます。
 何か良い方法はないでしょうか。

 よろしくお願いいたします。

[ ]
RE:03178 マクロでアカウント内の未読メーNo.03187
秀まるお2 さん 18/04/13 16:04
 
 GetNextFolderとGetFolderMailCountを使えばトータルの未読メール数が計算でき
ると思います。

 サンプルマクロ作ってみます。少々お待ちください。

[ ]
RE:03187 マクロでアカウント内の未読メーNo.03188
秀まるお2 さん 18/04/13 16:25
 
 サンプルマクロ作ってみました。

----------------------------------------------------------------------------
----
    loaddll "tkinfo.dll";
    $account = dllfuncstr("CurrentAccount");
    $folder = "受信";
    #total = 0;
    while(1) {
        #grepfolder = dllfunc("GetGrepFolderState", $account, $folder);
        if( #grepfolder == 0
         && $folder != "ゴミ箱"
         ) {
            #total = #total + dllfunc("GetFolderMailCount", $account, $folde
r, "unread");
        }
        $next = dllfuncstr("GetNextFolder", $account, $folder);
        #x = strstr( $next, "\\");
        if( #x < 0 ) {
            break;
        }
        $folder = midstr( $next, #x + 1, 256 );
        if( $folder == "" ) {
            break;
        }
        if( $folder == "受信ログ"
         || $folder == "送信ログ" ) {
            break;
        }
    }
    message "未読メール数 = " + str(#total);

[ ]
RE:03188 マクロでアカウント内の未読メーNo.03193
さん 18/04/13 18:48
 
 こんばんは、お世話になります。

 サンプルマクロありがとうございます。
 やりたいことができました。

 今後ともよろしくお願いいたします。

[ ]