Метод IMFAudioPolicy::SetIconPath (mfidl.h)
Задает ресурс значка для звукового сеанса. Этот значок отображается в элементе управления громкости Windows.
Синтаксис
HRESULT SetIconPath(
[in] LPCWSTR pszPath
);
Параметры
[in] pszPath
Строка расширенных символов, указывающая значок. См. заметки.
Возвращаемое значение
Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Путь к значку имеет формат "path,index" или "path,-id", где path — это полный путь к библиотеке DLL, исполняемому файлу или файлу значка; index — отсчитываемый от нуля индекс значка в файле; и id — это идентификатор ресурса. Обратите внимание, что идентификаторам ресурсов предшествует знак минус (-), чтобы отличить их от индексов. Путь может содержать переменные среды, например "%windir%". Дополнительные сведения см. в разделе IAudioSessionControl::SetIconPath в windows SDK.
Примеры
В следующем примере задается значок, используя идентификатор ресурса для значка в исполняемом файле приложения.
HRESULT SetIcon(IMFMediaSession *pSession, int nID)
{
IMFAudioPolicy *pPolicy = NULL;
const DWORD CCH_ICON_PATH = MAX_PATH + 16;
WCHAR szFileName[MAX_PATH];
WCHAR szIconPath[CCH_ICON_PATH];
HRESULT hr = S_OK;
DWORD result = GetModuleFileNameW(NULL, szFileName, MAX_PATH);
// Note: GetModuleFileName can return a truncated string without a
// NULL terminator. If so, the function succeeds but sets the last
// error to ERROR_INSUFFICIENT_BUFFER.
if ((result == 0) || (GetLastError() == ERROR_INSUFFICIENT_BUFFER))
{
hr = E_FAIL;
goto done;
}
hr = StringCchPrintfW(szIconPath, CCH_ICON_PATH,
L"%s,-%d", szFileName, nID);
if (FAILED(hr))
{
goto done;
}
hr = MFGetService(
pSession,
MR_AUDIO_POLICY_SERVICE,
IID_PPV_ARGS(&pPolicy)
);
if (FAILED(hr))
{
goto done;
}
hr = pPolicy->SetIconPath(szIconPath);
if (FAILED(hr))
{
goto done;
}
done:
SafeRelease(&pPolicy);
return hr;
}
Требования
Минимальная версия клиента | Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | mfidl.h |
Библиотека | Mfuuid.lib |