Condividi tramite


Funzione SetFileApisToOEM (fileapi.h)

Fa sì che le funzioni di I/O del file per il processo usino la tabella codici del set di caratteri OEM. Questa funzione è utile per le operazioni di input e output della console a 8 bit.

Sintassi

void SetFileApisToOEM();

Valore restituito

nessuno

Osservazioni

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

La funzione SetFileApisToOEM è integrata dalla funzione SetFileApisToANSI , che fa sì che lo stesso set di funzioni di I/O del file usi la tabella codici del set di caratteri ANSI.

Per impostazione predefinita, le funzioni della console a 8 bit usano la tabella codici OEM. Per impostazione predefinita, tutte le altre funzioni usano la tabella codici ANSI. Ciò significa che le stringhe restituite dalle funzioni della 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 della console a 8 bit vengono impostate per l'uso della tabella codici OEM, la funzione WriteConsoleA non visualizzerà correttamente la stringa.

Usare la funzione AreFileApisANSI per determinare la tabella codici in uso del set di funzioni di I/O dei file. Usare le funzioni SetConsoleCP e SetConsoleOutputCP per impostare la tabella codici per le funzioni della 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. A differenza di tale soluzione, un'applicazione console può chiamare la funzione SetFileApisToOEM per fare in modo che il set di funzioni di I/O di file usi stringhe di set di caratteri OEM anziché stringhe di set di caratteri ANSI. Usare la funzione SetFileApisToANSI per ripristinare tali funzioni nella tabella codici ANSI.

Quando si gestiscono le righe di comando, un'applicazione console deve ottenere la riga di comando in formato Unicode e quindi convertirla in formato OEM usando le funzioni da carattere a OEM pertinenti. Si noti anche che la matrice nel parametro argv della funzione main della riga di comando contiene stringhe del 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 di scalabilità orizzontale (SO)
File system del volume condiviso cluster (CsvFS)
Resilient File System (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 (include Windows.h, WinBase.h)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

AreFileApisANSI

Funzioni di gestione file

FindFirstFileA

SetConsoleCP

SetConsoleOutputCP

SetFileApisToANSI

WriteConsoleA