IMAPIOffline::SetCurrentState

适用于:Outlook 2013 | Outlook 2016

将脱机对象的当前状态设置为联机或脱机。

HRESULT SetCurrentState( 
    ULONG ulFlags, 
    ULONG ulMask, 
    ULONG ulState, 
    void* pReserved 
);

参数

ulFlags

[in]修改此调用的行为。 受支持的值包括:

MAPIOFFLINE_FLAG_BLOCK

ulFlags 设置为此值将阻止 SetCurrentState 调用,直到状态更改完成。 默认情况下,转换以异步方式进行。 异步进行转换时,所有 SetCurrentState 调用都将返回 E_PENDING ,直到更改完成。

MAPIOFFLINE_FLAG_DEFAULT

设置当前状态而不阻塞。

ulMask

[in]要更改的状态部分。 唯一支持的值是 MAPIOFFLINE_STATE_OFFLINE_MASK。

ulState

[in]要更改为的状态。 它必须是以下两个值之一:

MAPIOFFLINE_STATE_ONLINE

MAPIOFFLINE_STATE_OFFLINE

保存

此参数保留供 Outlook 内部使用,不受支持。

返回值

S_OK

脱机对象的状态已成功更改。

E_PENDING

这表示脱机对象的状态正在异步更改。 在早期 SetCurrentState 调用中将 ulFlags 设置为 MAPIOFFLINE_FLAG_BLOCK 时,就会发生这种情况,并且任何后续的 SetCurrentState 调用都将返回此值,直到异步状态更改完成。

另请参阅

IMAPIOffline::GetCapabilities
IMAPIOffline::GetCurrentStateMAPI 常量