Метод 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. В случае сбоя возможные коды возврата включают, но не ограничиваются ими, значения, показанные в следующей таблице.
Код возврата | Описание |
---|---|
|
Значение параметра равно NULL. |
|
Устройство конечной точки звука было отключено, или звуковое оборудование или связанные аппаратные ресурсы были перенастроены, отключены, удалены или иным образом стали недоступными для использования. |
|
Аудиослужба Windows не запущена. |
Комментарии
В Windows Vista системная программа, Sndvol.exe, использует значок отображения (вместе с отображаемым именем) для маркировки элемента управления громкости для сеанса. Если клиент не вызывает SetIconPath для назначения значка сеансу, программа Sndvol использует значок из окна приложения в качестве значка по умолчанию для сеанса.
В случае сеанса между процессами сеанс не связан с одним процессом приложения. Таким образом, sndvol не имеет значка для конкретного приложения для использования по умолчанию, и клиент должен вызвать SetIconPath , чтобы избежать отображения бессмысленного значка.
Значок отображения не сохраняется после времени существования объекта IAudioSessionControl . Таким образом, после освобождения всех ссылок на объект созданная впоследствии версия объекта (с тем же приложением, тем же ИДЕНТИФИКАТОРом GUID сеанса и тем же устройством конечной точки) снова будет иметь значок по умолчанию, пока клиент не вызовет SetIconPath.
Клиент может получить значок отображения для сеанса, вызвав метод IAudioSessionControl::GetIconPath .
Требования
Минимальная версия клиента | Windows Vista [классические приложения | Приложения UWP] |
Минимальная версия сервера | Windows Server 2008 [классические приложения | Приложения UWP] |
Целевая платформа | Windows |
Header | audiopolicy.h |