Funzione SetFileShortNameA (winbase.h)
Imposta il nome breve per il file specificato. Il file deve trovarsi in un volume del file system NTFS.
Sintassi
BOOL SetFileShortNameA(
[in] HANDLE hFile,
[in] LPCSTR lpShortName
);
Parametri
[in] hFile
Handle per il file. Il file deve essere aperto con il diritto di accesso GENERIC_ALL o GENERIC_WRITE|DELETE e con l'attributo file FILE_FLAG_BACKUP_SEMANTICS .
[in] lpShortName
Puntatore a una stringa che specifica il nome breve per il file.
Se si specifica una stringa vuota (lunghezza zero) verrà rimosso il nome del file breve, se presente per il file specificato dal parametro hFile . Se non esiste un nome di file breve, la funzione non eseguirà alcuna operazione e restituirà l'esito positivo.
Windows Server 2008, Windows Vista, Windows Server 2003 e Windows XP: Questo comportamento non è supportato. Il parametro deve contenere una stringa valida di uno o più caratteri.
Valore restituito
Se la funzione ha esito positivo, il valore restituito è diverso da zero.
Se la funzione ha esito negativo, il valore restituito è zero. Per informazioni dettagliate sull'errore, chiamare GetLastError. GetLastError può restituire uno dei codici di errore seguenti specifici di questa funzione.
Codice restituito | Descrizione |
---|---|
|
Il nome breve specificato non è univoco. |
|
Il file specificato è stato aperto in modalità con distinzione tra maiuscole e minuscole oppure il nome breve specificato non è valido. |
Commenti
Il chiamante di questa funzione deve avere il privilegio SE_RESTORE_NAME . Per altre informazioni, vedere Esecuzione con privilegi speciali.
In Windows 8 e Windows Server 2012 questa funzione è supportata dalle tecnologie seguenti.
Tecnologia | Supportato |
---|---|
Protocollo SMB (Server Message Block) 3.0 | Sì |
Failover trasparente SMB 3.0 (TFO) | No |
SMB 3.0 con condivisioni file di scalabilità orizzontale (SO) | No |
File system del volume condiviso cluster (CsvFS) | Sì |
Resilient File System (ReFS) | No |
SMB 3.0 non supporta nomi brevi nelle condivisioni con funzionalità di disponibilità continua. I nomi brevi non sono consigliati in CsvFs.
Nota
L'intestazione winbase.h definisce SetFileShortName 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 che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows XP [solo app desktop] |
Server minimo supportato | Windows Server 2003 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | winbase.h (include Windows.h) |
Libreria | Kernel32.lib |
DLL | Kernel32.dll |