Condividi tramite


Funzione SetFileApisToANSI (fileapi.h)

Causa l'uso della tabella codici del set di caratteri ANSI per il processo corrente. Questa funzione è utile per le operazioni di input e output della console a 8 bit.

Sintassi

void SetFileApisToANSI();

Valore restituito

nessuno

Osservazioni

Le funzioni di I/O del file la cui tabella codici è impostata da SetFileApisToANSI sono queste funzioni esportate da KERNEL32.DLL che accettano o restituiscono un nome file. SetFileApisToANSI imposta la tabella codici per ogni processo, anziché per thread o per computer.

La funzione SetFileApisToANSI integra la funzione SetFileApisToOEM , che causa lo stesso set di funzioni di I/O dei file per usare la tabella codici del set di caratteri OEM.

Le funzioni console a 8 bit usano la tabella codici OEM per impostazione predefinita. Tutte le altre funzioni usano la tabella codici ANSI per impostazione predefinita. Ciò significa che le stringhe restituite dalle funzioni console potrebbero non essere elaborate correttamente da altre funzioni e viceversa. Ad esempio, se la funzione FindFirstFileA restituisce una stringa contenente determinati caratteri ANSI estesi e le funzioni console a 8 bit vengono impostate per l'uso della tabella codici OEM, la funzione WriteConsoleA non visualizza correttamente la stringa.

Usare la funzione AreFileApisANSI per determinare la tabella codici in cui è in uso il set di funzioni di I/O dei file. Usare le funzioni SetConsoleCP e SetConsoleOutputCP per impostare la tabella codici per le funzioni console a 8 bit.

Per risolvere il problema di incompatibilità della tabella codici, è consigliabile usare Unicode per le applicazioni console. Le applicazioni console che usano Unicode sono molto più versatili di quelle che usano funzioni console a 8 bit. Barra di tale soluzione, un'applicazione console può chiamare la funzione SetFileApisToOEM per causare l'uso delle stringhe del set di caratteri OEM anziché delle stringhe del set di caratteri ANSI. Usare la funzione SetFileApisToANSI per impostare di nuovo tali funzioni sulla tabella codici ANSI.

Quando si tratta di righe di comando, un'applicazione console deve ottenere la riga di comando in formato Unicode e quindi convertirla in modulo OEM usando le funzioni di carattere-to-OEM pertinenti. Si noti anche che la matrice nel parametro argv della funzione principale della riga di comando contiene stringhe di set di caratteri ANSI in questo caso.

In Windows 8 e Windows Server 2012 questa funzione è supportata dalle tecnologie seguenti.

Tecnologia Supportato
Protocollo SMB (Server Message Block) 3.0
Failover trasparente SMB 3.0 (TFO)
SMB 3.0 con condivisioni file con scalabilità orizzontale (SO)
File system del volume condiviso del cluster (CsvFS)
File system resiliente (ReFS)

Requisiti

   
Client minimo supportato Windows XP [solo app desktop]
Server minimo supportato Windows Server 2003 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione fileapi.h (includono Windows.h, WinBase.h)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

AreFileApisANSI

Funzioni di gestione file

FindFirstFileA

SetConsoleCP

SetConsoleOutputCP

SetFileApisToOEM

WriteConsoleA