IMsgStore::StoreLogoff
適用於:Outlook 2013 |Outlook 2016
啟用訊息存放區的循序註銷。
HRESULT StoreLogoff(
ULONG FAR * lpulFlags
);
參數
lpulFlags
[in, out]控制訊息存放區註銷的旗標位掩碼。 在輸入時,針對此參數設定的所有旗標都是互斥的;呼叫端每個呼叫只能指定一個旗標。 下列旗標在輸入時有效:
LOGOFF_ABORT
此訊息存放區的任何傳輸提供者活動都應該在註銷之前停止。 活動停止之後,控制權會傳回給呼叫端。 如果發生任何傳輸提供者活動,則不會發生註銷,且MAPI多任務緩衝處理程式或傳輸提供者的行為不會變更。 如果傳輸提供者活動閑置,MAPI 多任務緩衝處理程式會釋放存放區。
LOGOFF_NO_WAIT
訊息存放區不應該在關閉之前等候來自傳輸提供者的訊息。 已準備好要傳送的輸出訊息會傳送。 如果此存放區包含預設收件匣,則會收到任何同進程訊息,然後停用進一步的接收。 當所有活動都完成時,MAPI 多任務緩衝處理程式會釋放存放區,而控制權會立即傳回給呼叫端。
LOGOFF_ORDERLY
訊息存放區不應該在關閉之前等候來自傳輸提供者的資訊。 目前正在處理的訊息已完成,但不會處理任何新的訊息。 當所有活動都完成時,MAPI 多任務緩衝處理程式會釋放存放區,而控制權會立即傳回給存放區提供者。
LOGOFF_PURGE
註銷的運作方式應該與設定LOGOFF_NO_WAIT旗標相同,但應呼叫適當傳輸提供者的 IXPLogon::FlushQueues 或 IMAPIStatus::FlushQueues 方法。 LOGOFF_PURGE旗標會在完成之後,將控制權傳回給呼叫端。
LOGOFF_QUIET
如果發生任何傳輸提供者活動,則不應該發生註銷。
下列旗標在輸出上有效
LOGOFF_INBOUND
輸入訊息目前已抵達。
LOGOFF_OUTBOUND
正在傳送輸出訊息。
LOGOFF_OUTBOUND_QUEUE
輸出訊息暫止 (也就是說,它們位於 Outbox) 中。
傳回值
S_OK
註銷已順利完成。
註解
IMsgStore::StoreLogoff 方法會在註銷程式期間控制訊息存放區和傳輸提供者的互動。 呼叫 StoreLogoff 僅適用於僅供呼叫端使用的訊息存放區。 例如,當兩個用戶端使用相同的訊息存放區,而其中一個用戶端呼叫 StoreLogoff 時,會立即釋放訊息存放區,並將控制權傳回給呼叫端用戶端。
實作者注意事項
儲存傳遞至 StoreLogoff 的旗標,並在呼叫 IMAPISupport::StoreLogoffTransports 方法時傳遞旗標。 在訊息存放區的參考計數降至零之前,請勿呼叫 StoreLogoffTransports 。 對 StoreLogoffTransports 的多個呼叫只會覆寫儲存的旗標。
如果在訊息存放區的參考計數達到零之前未呼叫 StoreLogoff,請在您傳遞至 StoreLogoffTransports 的 ulFlags 參數中設定LOGOFF_ABORT旗標。