IWMDMProgress3::Begin3 方法 (mswmdm.h)
Begin3 方法是由 Windows Media 裝置管理員 呼叫,表示作業即將開始。 盡可能提供作業持續時間的估計值。 這個方法會擴充 IWMDMProgress::Begin ,方法是提供事件標識碼 (標識符) 的其他輸入參數,以及命令選擇性內容的指標。 作業是由事件標識碼所識別。 方法可讓呼叫端將不透明數據結構傳遞至應用程式。
語法
HRESULT Begin3(
[in] GUID EventId,
[in] DWORD dwEstimatedTicks,
[in, out] OPAQUECOMMAND *pContext
);
參數
[in] EventId
識別即將開始之作業的 GUID 。 下表顯示可能的值。
事件 | 描述 |
---|---|
SCP_EVENTID_ACQSECURECLOCK | Windows Media 裝置管理員 正在從伺服器取得安全時鐘。 |
SCP_EVENTID_NEEDTOINDIV | 裝置正在個別化。 目前未使用這個值。 |
SCP_EVENTID_DRMINFO |
此事件識別碼可用來向應用程式通知應用程式,其版本DRM標頭位於每個檔案的內容中。
傳回的 OPAQUECOMMAND 結構已將 guidCommand 成員設定為 SCP_PARAMID_DRMVERSION。 此外,OPAQUECOMMAND 會指定下列其中一個旗標: WMDM_SCP_DRMINFO_NOT_DRMPROTECTED WMDM_SCP_DRMINFO_V1HEADER WMDM_SCP_DRMINFO_V2HEADER |
EVENT_WMDM_CONTENT_TRANSFER | 正在傳送內容到裝置或從裝置傳送。 |
[in] dwEstimatedTicks
DWORD ,指定作業完成所需的估計刻度數目。 在 dwEstimatedTicks 中傳遞的刻度數目是作業完成所需刻度數目的估計值。 在作業過程中,會呼叫 Progress3 方法來指出有多少刻度已轉譯。 應用程式可以使用估計值來設定顯示進度的顯示機制。
[in, out] pContext
OPAQUECOMMAND 結構的指標,其中包含傳送至裝置的命令,而不需由 Windows Media 裝置管理員 處理。 這個參數是選擇性的,而且可以是 NULL。
傳回值
應用程式應該會傳回下列其中一個 HRESULT 值。
傳回碼 | 描述 |
---|---|
|
作業應該會繼續。 |
|
Windows Media 裝置管理員 應該取消目前的作業,而不等待它完成。 如果應用程式使用區塊模式,則 Windows Media 裝置管理員 會將此錯誤傳回給應用程式。 |
備註
應用程式會傳回S_OK,指出應該繼續作業,並WMDM_E_USER_CANCELLED表示應該取消作業。 如果應用程式使用區塊模式並傳回WMDM_E_USER_CANCELLED,則 Windows Media 裝置管理員 會將這個相同的錯誤傳回給應用程式。
範例
下列 C++ 程式代碼示範 Begin3 的範例實作。
HRESULT Begin3(GUID EventId, DWORD dwEstimatedTicks, OPAQUECOMMAND* pContext)
{
WCHAR strGuid[64];
StringFromGUID2(reinterpret_cast<GUID&>(EventId),(LPOLESTR)strGuid, 64);
// TODO: Display the message "IWMDMProgress3::Begin3 called."
// followed by the strGuid value.
return S_OK;
}
規格需求
需求 | 值 |
---|---|
目標平台 | Windows |
標頭 | mswmdm.h |
程式庫 | Mssachlp.lib |