GetMailListCache関数(TKInfo.dll)(Ver7.35対応版)
 この関数は、現在のメール一覧枠の一覧でのインデックス(先頭から何番目からの番号)をパラメータで指定して、そのメールに関する、メール一覧表示用にメモリ上にキャッシュされてるメールの情報を返します。例えば件名(Subject:ヘッダ)やTo/From列に表示してるメールアドレスの内容を返します。

 この関数は検索結果の一覧上でも使えます。
 スレッド表示では使えません。
パラメータ1(数値型)
 メール一覧上での位置を指定します。先頭(一番上)が0です。


パラメータ2(数値型)
 0を指定すると件名(Subject:ヘッダ)を返します。ただし、件名が非常に長い場合は250文字程度でカットされます。(あくまでメール一覧の表示用の文字列なので)
 1を指定すると、To/From列に表示する用のメールアドレスを返します。


返り値(文字列型)
 パラメータ2で指定された情報の文字列を返します。
 パラメータ1で指定するインデックスが間違ってる場合(例えばメールが10通しか無いので100とか指定した場合)や、スレッド表示になってる場合は、""を返します。


    loaddll "tkinfo.dll";
    if( dllfunc("IsThreadView") ) {
        #n = dllfunc("SetThreadView", 0);
    }
    #count = dllfunc("MailCount");
    #i = 0;
    while( #i < #count ) {
        $subject = dllfuncstr("GetMailListCache", #i, 0);
        $subject2 = dllfuncstr("ToUpper", $subject);
        if( strstr( $subject2, "TEST" ) >= 0 ) {
            question str(#i) + "のメールにTESTがあります。選択しますか?" +
                    "\nSubject = " + $subject +
                    "\nTo/From = " + dllfuncstr("GetMailListCache", #i, 1);
            if( result == yes ) {
                #n = dllfunc("SetMailIndex", #i);
            }
            endmacro;
        }
        #i = #i + 1;
    }
    endmacro;
参照:SetMailIndex関数