Share via


Metodo IDWriteLocalizedStrings::FindLocaleName (dwrite.h)

Ottiene l'indice in base zero della coppia nome/stringa delle impostazioni locali con il nome delle impostazioni locali specificato.

Sintassi

HRESULT FindLocaleName(
  [in]  WCHAR const *localeName,
  [out] UINT32      *index,
  [out] BOOL        *exists
);

Parametri

[in] localeName

Tipo: const WCHAR*

Matrice con terminazione null di caratteri contenente il nome delle impostazioni locali da cercare.

[out] index

Tipo: UINT32*

Indice in base zero della coppia nome/stringa delle impostazioni locali. Questo metodo inizializza l'indice per UINT_MAX.

[out] exists

Tipo: BOOL*

Quando questo metodo restituisce, contiene TRUE se il nome delle impostazioni locali esiste; in caso contrario, FALSE. Questo metodo inizializza l'oggettoFALSE.

Valore restituito

Tipo: HRESULT

Se il nome delle impostazioni locali specificato non esiste, il valore restituito è S_OK, ma l'indice è UINT_MAX ed esiste è FALSE.

Commenti

Si noti che se il nome delle impostazioni locali non esiste, il valore restituito è un esito positivo e il parametro esiste è FALSE. Se si ottiene il nome della famiglia di caratteri per un tipo di carattere e il nome delle impostazioni locali specificato non esiste, un'opzione consiste nell'impostare l'indice su 0, come illustrato di seguito. Per una famiglia di caratteri è sempre presente almeno una impostazioni locali.

UINT32 index = 0;
BOOL exists = false;

wchar_t localeName[LOCALE_NAME_MAX_LENGTH];

if (SUCCEEDED(hr))
{
    // Get the default locale for this user.
    int defaultLocaleSuccess = GetUserDefaultLocaleName(localeName, LOCALE_NAME_MAX_LENGTH);

    // If the default locale is returned, find that locale name, otherwise use "en-us".
    if (defaultLocaleSuccess)
    {
        hr = pFamilyNames->FindLocaleName(localeName, &index, &exists);
    }
    if (SUCCEEDED(hr) && !exists) // if the above find did not find a match, retry with US English
    {
        hr = pFamilyNames->FindLocaleName(L"en-us", &index, &exists);
    }
}

// If the specified locale doesn't exist, select the first on the list.
if (!exists)
    index = 0;

Requisiti

   
Client minimo supportato Windows 7, Windows Vista con SP2 e Aggiornamento della piattaforma per Windows Vista [app desktop | App UWP]
Server minimo supportato Windows Server 2008 R2, Windows Server 2008 con SP2 e Platform Update per Windows Server 2008 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione dwrite.h
Libreria Dwrite.lib
DLL Dwrite.dll

Vedi anche

IDWriteLocalizedStrings