Condividi tramite


Funzione CheckNameLegalDOS8Dot3A (winbase.h)

Determina se il nome specificato può essere utilizzato per creare un file in un file system FAT.

Sintassi

BOOL CheckNameLegalDOS8Dot3A(
  [in]            LPCSTR lpName,
  [out, optional] LPSTR  lpOemName,
  [in]            DWORD  OemNameSize,
  [out, optional] PBOOL  pbNameContainsSpaces,
  [out]           PBOOL  pbNameLegal
);

Parametri

[in] lpName

Nome del file, in formato 8.3.

[out, optional] lpOemName

Puntatore a un buffer che riceve la stringa OEM che corrisponde a Name. Questo parametro può essere NULL.

[in] OemNameSize

Dimensioni del buffer di lpOemName, in caratteri. Se lpOemName è NULL, questo parametro deve essere 0 (zero).

[out, optional] pbNameContainsSpaces

Indica se un nome contiene spazi. Questo parametro può essere NULL. Se il nome non è un nome di file system FAT 8.3 valido, questo parametro non è definito.

[out] pbNameLegal

Se la funzione ha esito positivo, questo parametro indica se un nome file è un nome di file FAT 8.3 valido quando la tabella codici OEM corrente viene applicata al nome del file.

Valore restituito

Se la funzione ha esito positivo, il valore restituito è diverso da zero.

Se la funzione ha esito negativo, il valore restituito è 0 (zero). Per ottenere informazioni estese sull'errore, chiamare GetLastError.

Osservazioni

Questa funzione può essere usata per determinare se un nome file può essere passato a un'applicazione basata su Windows a 16 bit o a un'applicazione basata su MS-DOS.

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

Tecnologia Sostenuto
Protocollo SMB (Server Message Block) 3.0
SMB 3.0 Transparent Failover (TFO) Vedere le osservazioni
SMB 3.0 con condivisioni file con scalabilità orizzontale (SO) Vedere le osservazioni
Cluster Shared Volume File System (CsvFS)
Resilient File System (ReFS)
 

Si noti che SMB 3.0 non supporta nomi brevi nelle condivisioni con funzionalità di disponibilità continua, quindi la funzione restituirà sempre zero (errore).

Nota

L'intestazione winbase.h definisce CheckNameLegalDOS8Dot3 come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice non indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere convenzioni di per i prototipi di funzioni.

Fabbisogno

Requisito Valore
client minimo supportato Windows Vista, Windows XP con SP1 [solo app desktop]
server minimo supportato Windows Server 2003 [solo app desktop]
piattaforma di destinazione Finestre
intestazione winbase.h (include Windows.h)
libreria Kernel32.lib
dll Kernel32.dll

Vedere anche

funzioni di gestione file

GetOEMCP