Funzione FindStringOrdinal (libloaderapi.h)
Individua una stringa Unicode (caratteri wide) in un'altra stringa Unicode per un confronto non linguistico.
Sintassi
int FindStringOrdinal(
[in] DWORD dwFindStringOrdinalFlags,
[in] LPCWSTR lpStringSource,
[in] int cchSource,
[in] LPCWSTR lpStringValue,
[in] int cchValue,
[in] BOOL bIgnoreCase
);
Parametri
[in] dwFindStringOrdinalFlags
Flag che specificano i dettagli dell'operazione di ricerca. Questi flag si escludono a vicenda, con FIND_FROMSTART l'impostazione predefinita. L'applicazione può specificare solo uno dei flag di ricerca.
[in] lpStringSource
Puntatore alla stringa di origine, in cui la funzione cerca la stringa specificata da lpStringValue.
[in] cchSource
Dimensioni, in caratteri esclusi il carattere Null di terminazione, della stringa indicata da lpStringSource. L'applicazione deve in genere specificare un numero positivo o 0. L'applicazione può specificare -1 se la stringa di origine è con terminazione Null e la funzione deve calcolare automaticamente le dimensioni.
[in] lpStringValue
Puntatore alla stringa di ricerca per cui la funzione esegue la ricerca nella stringa di origine.
[in] cchValue
Dimensioni, in caratteri esclusi il carattere Null di terminazione, della stringa indicata da lpStringValue. L'applicazione deve in genere specificare un numero positivo o 0. L'applicazione può specificare -1 se la stringa è con terminazione Null e la funzione deve calcolare automaticamente le dimensioni.
[in] bIgnoreCase
TRUE se la funzione deve eseguire un confronto senza distinzione tra maiuscole e minuscole e FALSE in caso contrario. Il confronto non è un'operazione linguistica e non è appropriato per tutte le impostazioni locali e le lingue. Il comportamento è simile a quello per l'inglese.
Valore restituito
Restituisce un indice in base 0 nella stringa di origine indicata da lpStringSource se l'operazione riesce. Se la funzione ha esito positivo, la stringa trovata corrisponde al valore di lpStringValue. Un valore restituito pari a 0 indica che la funzione ha trovato una corrispondenza all'inizio della stringa di origine.
La funzione restituisce -1 se non riesce o se non trova la stringa di ricerca. Per ottenere informazioni estese sull'errore, l'applicazione può chiamare GetLastError, che può restituire uno dei codici di errore seguenti:
- ERROR_INVALID_FLAGS. I valori specificati per i flag non sono validi.
- ERROR_INVALID_PARAMETER. Uno dei valori dei parametri non è valido.
- ERROR_SUCCESS. L'azione è stata completata correttamente, ma non ha restituito risultati.
Commenti
Poiché FindStringOrdinal fornisce un confronto binario, non restituisce risultati linguistici appropriati. Il confronto ordinale potrebbe essere scambiato per il comportamento di ordinamento in inglese. Tuttavia, non trova corrispondenze quando i caratteri variano in base a quantità linguisticamente insignificanti. Per informazioni sulla scelta di una funzione di ordinamento appropriata, vedere Ordinamento .
A differenza delle funzioni NLS che restituiscono 0 per errore, questa funzione restituisce -1 se ha esito negativo. In caso di esito positivo, restituisce un indice basato su 0. L'uso di questo indice consente alla funzione di evitare errori off-by-one e sovraccarichi del buffer di un carattere.
Questa funzione è una delle poche funzioni NLS che chiama SetLastError anche quando ha esito positivo. Esegue questa chiamata per cancellare l'ultimo errore in un thread quando non riesce a trovare la corrispondenza con la stringa di ricerca. In questo modo viene cancellato il valore restituito da GetLastError.
A partire da Windows 8: FindStringOrdinal è dichiarato in Libloaderapi.h. Prima di Windows 8, è stato dichiarato in Winnls.h.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 7 [app desktop | App UWP] |
Server minimo supportato | Windows Server 2008 R2 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | libloaderapi.h (include Windows.h) |
Libreria | Kernel32.lib |
DLL | Kernel32.dll |
Vedere anche
Gestione dell'ordinamento nelle applicazioni