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|DELETEe con l'attributo file FILE_FLAG_BACKUP_SEMANTICS.
[in] lpShortName
Puntatore a una stringa che specifica il nome breve del file.
Se si specifica una stringa vuota (di lunghezza zero) verrà rimosso il nome di file breve, se esistente 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 ottenere informazioni estese 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. |
Osservazioni
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 | Sostenuto |
---|---|
Protocollo SMB (Server Message Block) 3.0 | Sì |
SMB 3.0 Transparent Failover (TFO) | No |
SMB 3.0 con condivisioni file con scalabilità orizzontale (SO) | No |
Cluster Shared Volume File System (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 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 XP [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 |