version 6.8.1
IMAP_SetCurrentMB (imap_ID; mbName; msgNber; newMsgNber; customFlags; permanentFlags; mbUID) --> 整数
引数 | タイプ | 説明 | |
imap_ID | 倍長整数 | --> | IMAPログイン参照 |
mbName | テキスト | --> | 選択するメールボックス名 |
msgNber | 倍長整数 | カレントメールボックスのメッセージ数 | |
newMsgNber | 倍長整数 | \Recentフラグがセットされたメッセージ数 | |
customFlags | テキスト | メールボックスで現在使用されているフラグのリスト | |
permanentFlags | テキスト | 恒久的に更新可能なフラグのリスト | |
mbUID | 倍長整数 | メールボックスユニークID | |
戻り値 | 整数 | エラーコード |
説明
IMAP_SetCurrentMB コマンドは指定したメールボックスのメッセージを管理するために、セッションを開きます (例えばカレントメールボックスを選択します)。
接続中、一度に一つだけセッションを開くことができます。同時に複数のメールボックスにアクセスするには、複数の接続 (複数の IMAP_Login) が必要です。IMAP_SetCurrentMB コマンドは新しくメールボックスを選択する前に、自動でカレントのセッションを閉じます。このため、カレントのメールボックスが存在する状態でIMAP_SetCurrentMB コマンドの実行に失敗すると、その時点でカレントのメールボックスは選択されていないことになります。
新しいセッションを選択せずにセッションを閉じる (カレントメールボックスを閉じる) ことができます。これを行うには、IMAP_SetCurrentMB コマンドを存在しないメールボックス名で呼び出して返されるエラーを処理するか、IMAP_CloseCurrentMBまたはIMAP_Logout コマンドを実行します。
imap_ID はIMAP_Loginで作成されるIMAPログイン参照です。
mbName はカレントに指定する、存在するメールボックスの完全名です。
msgNber にはカレントメールボックスのメッセージ数が返されます (IMAP_SetCurrentMB が呼び出されるとき0に設定され、エラーの際には-1が返されます)。
newMsgNber にはカレントメールボックスの新規メッセージ数が返されます (IMAP_SetCurrentMB が呼び出されるとき0に設定され、エラーの際には-1が返されます)。
customFlags には、カレントメールボックスで使用されているフラグの完全なリストが返されます。permanentFlags にリストされているフラグのみが更新可能であることに注意してください。
permanentFlags には、恒久的に変更可能なメールボックスメッセージのフラグリストが返されます (IMAPサーバが管理する\Recentフラグを除く)。(IMAP_SetCurrentMBが呼び出された時に空の文字列に設定されます。) permanentFlags 文字列には特別なフラグ \* が含まれることがあります。このフラグは、メールボックスにこれらのフラグを格納しようとしたときにキーワードを作成することができることを意味します (IMAP_SetFlags参照)。
permanentFlags に空の文字列が返された場合、customFlags 引数にリストされたすべてのフラグを恒久的に変更可能であることを意味します。
mbUID にはカレントメールボックスのユニークIDが返されます。
このIDは特に、メールボックスが削除された後に同じ名前でメールボックスが再作成された場合に有効です。名前が同じなため、ユニークIDを使用しなければ、これが異なるメールボックスであることには気がつかないかもしれません。
参照
IMAP_CloseCurrentMB, IMAP_GetFlags, IMAP_GetMBStatus, IMAP_ListMBs, IMAP_Logout, IMAP_SetFlags.