IAudioSessionControl::SetIconPath 方法 (audiopolicy.h)
SetIconPath方法會將顯示圖示指派給目前的會話。
語法
HRESULT SetIconPath(
[in] LPCWSTR Value,
[in] LPCGUID EventContext
);
參數
[in] Value
Null 終止寬字元字串的指標,指定包含圖示之 .ico、.dll 或 .exe 檔案的路徑和檔案名。 如需圖示路徑的相關資訊,請參閱 Windows SDK 檔。
[in] EventContext
事件內容 GUID 的指標。 如果呼叫這個方法會產生圖示變更事件,會話管理員會將通知傳送給已向會話管理員註冊 IAudioSessionEvents 介面的所有用戶端。 會話管理員會在每個通知中包含 EventCoNtext 指標值。 收到通知時,用戶端可以藉由檢查 EventCoNtext 值來判斷它或另一個用戶端是否為事件的來源。 此配置取決於用戶端選取這個參數的值,這個參數在會話中的所有用戶端之間是唯一的。 如果呼叫端提供此參數的 Null 指標,則用戶端的通知方法會收到 Null 內容指標。
傳回值
如果方法成功,它會傳回 S_OK。 如果失敗,可能的傳回碼包括,但不限於下表所示的值。
傳回碼 | Description |
---|---|
|
參數 值 為 Null。 |
|
音訊端點裝置已解除叢集,或音訊硬體或相關聯的硬體資源已重新設定、停用、移除,否則無法使用。 |
|
Windows 音訊服務未執行。 |
備註
在 Windows Vista 中,系統提供的程式 Sndvol.exe 會使用顯示圖示 (以及顯示名稱) 來標記會話的磁片區控制項。 如果用戶端未呼叫 SetIconPath 將圖示指派給會話,Sndvol 程式會使用應用程式視窗中的圖示作為會話的預設圖示。
在跨進程會話的情況下,會話不會與單一應用程式進程相關聯。 因此,Sndvol 預設沒有要使用的應用程式特定圖示,而且用戶端必須呼叫 SetIconPath 以避免顯示無意義的圖示。
顯示圖示不會持續超過 IAudioSessionControl 物件的存留期。 因此,在釋放物件的所有參考之後,後續建立的物件版本 (會使用相同的應用程式、相同的會話 GUID 和相同的端點裝置) 再次有預設圖示,直到用戶端呼叫 SetIconPath為止。
用戶端可以藉由呼叫 IAudioSessionControl::GetIconPath 方法來擷取會話的顯示圖示。
規格需求
最低支援的用戶端 | Windows Vista [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2008 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | audiopolicy.h |