Partager via


Utilisation de profils système localisés

[La fonctionnalité associée à cette page, le Kit de développement logiciel (SDK) Windows Media Format 11, est une fonctionnalité héritée. Il a été remplacé par le lecteur source et l’enregistreurrécepteur. Le lecteur source et l’enregistreur récepteur ont été optimisés pour Windows 10 et Windows 11. Microsoft recommande vivement que le nouveau code utilise le lecteur source et l’enregistreur récepteur au lieu du Kit de développement logiciel (SDK) Windows Media Format 11, lorsque cela est possible. Microsoft suggère que le code existant qui utilise les API héritées soit réécrit pour utiliser les nouvelles API si possible.]

Le Kit de développement logiciel (SDK) au format Windows Media inclut des profils système avec des noms et des descriptions dans plusieurs langues. Les fichiers .prx du profil système localisé sont installés dans le dossier [SDKRoot]\WMSDK\WMFSDK9\LocalizedProfiles. Pour accéder à un fichier particulier avec les méthodes IWMProfileManagerLanguage , vous devez le déplacer dans le répertoire racine du système avec les autres fichiers de profil système. Pour obtenir la liste des fichiers de profil système localisés, consultez Profils système localisés.

Vous pouvez définir ou récupérer la langue du profil système à l’aide des méthodes de l’interface IWMProfileManagerLanguage . La langue est spécifiée en tant que valeur LANGID, qui se compose d’un identificateur de langue principale et d’un identificateur de langue secondaire. Le code suivant montre comment récupérer la langue actuelle. La langue par défaut est l’anglais américain (0x409). Pour plus d’informations sur l’utilisation de ce code, consultez Utilisation des exemples de code.

HRESULT GetCurrentSystemProfileLanguage(IMWProfilManager* pProfileMgr)
{
    HRESULT hr = S_OK;

    IWMProfileManagerLanguage* pProfileMgrLang = NULL;

    // Get the profile manager language interface.
    hr = pProfileMgr->QueryInterface(IID_IWMProfileManagerLanguage,
                                     (void **) &pProfileMgrLang);
    if(FAILED(hr))
    {
        printf("Couldn't get IWMProfileManagerLanguage.\n");
        SAFE_RELEASE(pProfileMgrLang);
        return hr;
    }

    // Retrieve the current language (as a LANGID value)
    WORD wLangID = 0;
    hr = pProfileMgrLang->GetUserLanguageID(&wLangID);
    if(FAILED(hr))
    {
        printf("Could not get the current language.\n");
        SAFE_RELEASE(pProfileMgrLang);
        return hr;
    }

    printf("The current language ID is 0x%X\n", wLangID);

    SAFE_RELEASE(pProfileMgrLang);
    return S_OK;
}

Utilisation de profils système