xrtImapMailboxInfoInit

初始化空邮箱摘要。

void xrtImapMailboxInfoInit(ximapmailboxinfo* pInfo);
参数说明
ximapmailboxinfo* pInfo上下文信息
返回:初始化空邮箱摘要。

示例已编译验证

imapmailboxinfoinit obj;
xrtImapMailboxInfoInit(&obj, pInfo);

xrtImapMailboxInfoUpdate

把一条 SELECT、EXAMINE 或未请求更新合并到邮箱摘要。

xmailnext xrtImapMailboxInfoUpdate( const ximapresponseview* pResponse, ximapmailboxinfo* pInfo );
参数说明
const ximapresponseview* pResponse响应对象
ximapmailboxinfo* pInfo上下文信息
返回:把一条 SELECT、EXAMINE 或未请求更新合并到邮箱摘要。

示例已编译验证

/* 把一条 SELECT、EXAMINE 或未请求更新合并到邮箱摘要。 */
result = xrtImapMailboxInfoUpdate(pResponse, pInfo);

xrtImapClientNoop

执行 NOOP 并消费命令期间的未请求响应。

bool xrtImapClientNoop( ximapclient* pClient, xdeadline iDeadline, xcancel* pCancel );
参数说明
ximapclient* pClient客户端对象
xdeadline iDeadline截止时间
xcancel* pCancel取消令牌
返回:执行 NOOP 并消费命令期间的未请求响应。

示例已编译验证

/* 执行 NOOP 并消费命令期间的未请求响应。 */
result = xrtImapClientNoop(pClient, iDeadline, pCancel);

xrtImapClientSelect

选择可写邮箱,并返回零分配状态摘要。

bool xrtImapClientSelect( ximapclient* pClient, xstrview Mailbox, ximapmailboxinfo* pInfo, xdeadline iDeadline, xcancel* pCancel );
参数说明
ximapclient* pClient客户端对象
xstrview MailboxMalbox 参数
ximapmailboxinfo* pInfo上下文信息
xdeadline iDeadline截止时间
xcancel* pCancel取消令牌
返回:选择可写邮箱,并返回零分配状态摘要。

示例已编译验证

/* 选择可写邮箱,并返回零分配状态摘要。 */
result = xrtImapClientSelect(pClient, Mailbox, pInfo, iDeadline, pCancel);

xrtImapClientExamine

以只读方式选择邮箱,并返回零分配状态摘要。

bool xrtImapClientExamine( ximapclient* pClient, xstrview Mailbox, ximapmailboxinfo* pInfo, xdeadline iDeadline, xcancel* pCancel );
参数说明
ximapclient* pClient客户端对象
xstrview MailboxMalbox 参数
ximapmailboxinfo* pInfo上下文信息
xdeadline iDeadline截止时间
xcancel* pCancel取消令牌
返回:以只读方式选择邮箱,并返回零分配状态摘要。

示例已编译验证

/* 以只读方式选择邮箱,并返回零分配状态摘要。 */
result = xrtImapClientExamine(pClient, Mailbox, pInfo, iDeadline, pCancel);

xrtImapClientCheck

对当前选中邮箱执行 CHECK。

bool xrtImapClientCheck( ximapclient* pClient, xdeadline iDeadline, xcancel* pCancel );
参数说明
ximapclient* pClient客户端对象
xdeadline iDeadline截止时间
xcancel* pCancel取消令牌
返回:对当前选中邮箱执行 CHECK。

示例已编译验证

/* 对当前选中邮箱执行 CHECK。 */
result = xrtImapClientCheck(pClient, iDeadline, pCancel);

xrtImapClientUnselect

不执行隐式 EXPUNGE 地离开当前邮箱。

bool xrtImapClientUnselect( ximapclient* pClient, xdeadline iDeadline, xcancel* pCancel );
参数说明
ximapclient* pClient客户端对象
xdeadline iDeadline截止时间
xcancel* pCancel取消令牌
返回:不执行隐式 EXPUNGE 地离开当前邮箱。

示例已编译验证

/* 不执行隐式 EXPUNGE 地离开当前邮箱。 */
result = xrtImapClientUnselect(pClient, iDeadline, pCancel);

xrtImapClientCloseMailbox

执行 CLOSE,提交删除标记并离开当前邮箱。

bool xrtImapClientCloseMailbox( ximapclient* pClient, xdeadline iDeadline, xcancel* pCancel );
参数说明
ximapclient* pClient客户端对象
xdeadline iDeadline截止时间
xcancel* pCancel取消令牌
返回:执行 CLOSE,提交删除标记并离开当前邮箱。

示例已编译验证

/* 执行 CLOSE,提交删除标记并离开当前邮箱。 */
result = xrtImapClientCloseMailbox(pClient, iDeadline, pCancel);

xrtImapClientCreateMailbox

创建、删除、重命名、订阅或取消订阅邮箱。

bool xrtImapClientCreateMailbox( ximapclient* pClient, xstrview Mailbox, xdeadline iDeadline, xcancel* pCancel );
参数说明
ximapclient* pClient客户端对象
xstrview MailboxMalbox 参数
xdeadline iDeadline截止时间
xcancel* pCancel取消令牌
返回:创建、删除、重命名、订阅或取消订阅邮箱。

示例已编译验证

/* 创建、删除、重命名、订阅或取消订阅邮箱。 */
xhandle* h = xrtImapClientCreateMailbox(pClient, Mailbox, iDeadline, pCancel);

xrtImapClientDeleteMailbox

XRT_API bool xrtImapClientDeleteMailbox( ximapclient* pClient, xstrview Mailbox, xdeadline iDeadline, xcancel* pCancel );

;
返回:XRT_API bool xrtImapClientDeleteMailbox( ximapclient* pClient, xstrview Mailbox, xdeadline iDeadline, xcancel* pCancel );

示例已编译验证

/* XRT_API bool xrtImapClientDeleteMailbox( ximapclient* pClient, xstrview Mailbox, xdeadline iDeadline, xcancel* pCancel ); */
result = xrtImapClientDeleteMailbox();

xrtImapClientRenameMailbox

XRT_API bool xrtImapClientRenameMailbox( ximapclient* pClient, xstrview Source, xstrview Target, xdeadline iDeadline, xcancel* pCancel );

;
返回:XRT_API bool xrtImapClientRenameMailbox( ximapclient* pClient, xstrview Source, xstrview Target, xdeadline iDeadline, xcancel* pCancel );

示例已编译验证

/* XRT_API bool xrtImapClientRenameMailbox( ximapclient* pClient, xstrview Source, xstrview Target, xdeadline iDeadline, xcancel* pCancel ); */
result = xrtImapClientRenameMailbox();

xrtImapClientSubscribe

XRT_API bool xrtImapClientSubscribe( ximapclient* pClient, xstrview Mailbox, xdeadline iDeadline, xcancel* pCancel );

;
返回:XRT_API bool xrtImapClientSubscribe( ximapclient* pClient, xstrview Mailbox, xdeadline iDeadline, xcancel* pCancel );

示例已编译验证

/* XRT_API bool xrtImapClientSubscribe( ximapclient* pClient, xstrview Mailbox, xdeadline iDeadline, xcancel* pCancel ); */
result = xrtImapClientSubscribe();

xrtImapClientUnsubscribe

XRT_API bool xrtImapClientUnsubscribe( ximapclient* pClient, xstrview Mailbox, xdeadline iDeadline, xcancel* pCancel );

;
返回:XRT_API bool xrtImapClientUnsubscribe( ximapclient* pClient, xstrview Mailbox, xdeadline iDeadline, xcancel* pCancel );

示例已编译验证

/* XRT_API bool xrtImapClientUnsubscribe( ximapclient* pClient, xstrview Mailbox, xdeadline iDeadline, xcancel* pCancel ); */
result = xrtImapClientUnsubscribe();

xrtImapClientBeginList

开始会返回数据的命令;结果继续通过 Next 和 ReadLiteral 流式读取。

bool xrtImapClientBeginList( ximapclient* pClient, xstrview Reference, xstrview Pattern, xdeadline iDeadline, xcancel* pCancel );
参数说明
ximapclient* pClient客户端对象
xstrview ReferenceReference 参数
xstrview Pattern模式文本
xdeadline iDeadline截止时间
xcancel* pCancel取消令牌
返回:开始会返回数据的命令;结果继续通过 Next 和 ReadLiteral 流式读取。

示例已编译验证

/* 开始会返回数据的命令;结果继续通过 Next 和 ReadLiteral 流式读取。 */
result = xrtImapClientBeginList(pClient, Reference, Pattern, iDeadline, pCancel);

xrtImapClientBeginStatus

XRT_API bool xrtImapClientBeginStatus( ximapclient* pClient, xstrview Mailbox, xstrview Items, xdeadline iDeadline, xcancel* pCancel );

;
返回:XRT_API bool xrtImapClientBeginStatus( ximapclient* pClient, xstrview Mailbox, xstrview Items, xdeadline iDeadline, xcancel* pCancel );

示例已编译验证

/* XRT_API bool xrtImapClientBeginStatus( ximapclient* pClient, xstrview Mailbox, xstrview Items, xdeadline iDeadline, xcancel* pCancel ); */
result = xrtImapClientBeginStatus();

xrtImapClientBeginSearch

XRT_API bool xrtImapClientBeginSearch( ximapclient* pClient, xstrview Criteria, bool bUid, xdeadline iDeadline, xcancel* pCancel );

;
返回:XRT_API bool xrtImapClientBeginSearch( ximapclient* pClient, xstrview Criteria, bool bUid, xdeadline iDeadline, xcancel* pCancel );

示例已编译验证

/* XRT_API bool xrtImapClientBeginSearch( ximapclient* pClient, xstrview Criteria, bool bUid, xdeadline iDeadline, xcancel* pCancel ); */
result = xrtImapClientBeginSearch();

xrtImapClientBeginFetch

XRT_API bool xrtImapClientBeginFetch( ximapclient* pClient, xstrview Set, xstrview Items, bool bUid, xdeadline iDeadline, xcancel* pCancel );

;
返回:XRT_API bool xrtImapClientBeginFetch( ximapclient* pClient, xstrview Set, xstrview Items, bool bUid, xdeadline iDeadline, xcancel* pCancel );

示例已编译验证

/* XRT_API bool xrtImapClientBeginFetch( ximapclient* pClient, xstrview Set, xstrview Items, bool bUid, xdeadline iDeadline, xcancel* pCancel ); */
result = xrtImapClientBeginFetch();

xrtImapClientBeginStore

XRT_API bool xrtImapClientBeginStore( ximapclient* pClient, xstrview Set, ximapstoremode Mode, xstrview Flags, bool bUid, xdeadline iDeadline, xcancel* pCancel );

;
返回:XRT_API bool xrtImapClientBeginStore( ximapclient* pClient, xstrview Set, ximapstoremode Mode, xstrview Flags, bool bUid, xdeadline iDeadline, xcancel* pCancel );

示例已编译验证

/* XRT_API bool xrtImapClientBeginStore( ximapclient* pClient, xstrview Set, ximapstoremode Mode, xstrview Flags, bool bUid, xdeadline iDeadline, xcancel* pCancel ); */
result = xrtImapClientBeginStore();

xrtImapClientBeginCopy

XRT_API bool xrtImapClientBeginCopy( ximapclient* pClient, xstrview Set, xstrview Mailbox, bool bUid, xdeadline iDeadline, xcancel* pCancel );

;
返回:XRT_API bool xrtImapClientBeginCopy( ximapclient* pClient, xstrview Set, xstrview Mailbox, bool bUid, xdeadline iDeadline, xcancel* pCancel );

示例已编译验证

/* XRT_API bool xrtImapClientBeginCopy( ximapclient* pClient, xstrview Set, xstrview Mailbox, bool bUid, xdeadline iDeadline, xcancel* pCancel ); */
result = xrtImapClientBeginCopy();

xrtImapClientBeginMove

XRT_API bool xrtImapClientBeginMove( ximapclient* pClient, xstrview Set, xstrview Mailbox, bool bUid, xdeadline iDeadline, xcancel* pCancel );

;
返回:XRT_API bool xrtImapClientBeginMove( ximapclient* pClient, xstrview Set, xstrview Mailbox, bool bUid, xdeadline iDeadline, xcancel* pCancel );

示例已编译验证

/* XRT_API bool xrtImapClientBeginMove( ximapclient* pClient, xstrview Set, xstrview Mailbox, bool bUid, xdeadline iDeadline, xcancel* pCancel ); */
result = xrtImapClientBeginMove();

xrtImapClientBeginExpunge

空 UidSet 开始 EXPUNGE;非空集合开始 UID EXPUNGE。

bool xrtImapClientBeginExpunge( ximapclient* pClient, xstrview UidSet, xdeadline iDeadline, xcancel* pCancel );
参数说明
ximapclient* pClient客户端对象
xstrview UidSetUdSet 参数
xdeadline iDeadline截止时间
xcancel* pCancel取消令牌
返回:空 UidSet 开始 EXPUNGE;非空集合开始 UID EXPUNGE。

示例已编译验证

/* 空 UidSet 开始 EXPUNGE;非空集合开始 UID EXPUNGE。 */
result = xrtImapClientBeginExpunge(pClient, UidSet, iDeadline, pCancel);

xrtImapClientBeginIdle

开始 IDLE;收到 continuation 后可读取事件,结束时发送 DONE。

bool xrtImapClientBeginIdle( ximapclient* pClient, xdeadline iDeadline, xcancel* pCancel );
参数说明
ximapclient* pClient客户端对象
xdeadline iDeadline截止时间
xcancel* pCancel取消令牌
返回:开始 IDLE;收到 continuation 后可读取事件,结束时发送 DONE。

示例已编译验证

/* 开始 IDLE;收到 continuation 后可读取事件,结束时发送 DONE。 */
result = xrtImapClientBeginIdle(pClient, iDeadline, pCancel);

xrtImapClientEndIdle

XRT_API bool xrtImapClientEndIdle( ximapclient* pClient, xdeadline iDeadline, xcancel* pCancel );

;
返回:XRT_API bool xrtImapClientEndIdle( ximapclient* pClient, xdeadline iDeadline, xcancel* pCancel );

示例已编译验证

/* XRT_API bool xrtImapClientEndIdle( ximapclient* pClient, xdeadline iDeadline, xcancel* pCancel ); */
result = xrtImapClientEndIdle();