Metodo IMFAudioPolicy::SetIconPath (mfidl.h)
Imposta la risorsa icona per la sessione audio. Il controllo volume di Windows visualizza questa icona.
Sintassi
HRESULT SetIconPath(
[in] LPCWSTR pszPath
);
Parametri
[in] pszPath
Stringa di caratteri wide che specifica l'icona. Vedere la sezione Osservazioni.
Valore restituito
Se questo metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore HRESULT .
Commenti
Il percorso dell'icona ha il formato "path, index" o "path,-id", dove percorso è il percorso completo di un file DLL, eseguibile o icona; indice è l'indice in base zero dell'icona all'interno del file; e id è un identificatore di risorsa. Si noti che gli identificatori di risorsa sono preceduti da un segno meno (-) per distinguerli dagli indici. Il percorso può contenere variabili di ambiente, ad esempio "%windir%". Per altre informazioni, vedere IAudioSessionControl::SetIconPath in Windows SDK.
Esempio
Nell'esempio seguente viene impostata l'icona usando un identificatore di risorsa per un'icona nel file eseguibile dell'applicazione.
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;
}
Requisiti
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | mfidl.h |
Libreria | Mfuuid.lib |