Bagikan melalui


Fungsi SetFileShortNameA (winbase.h)

Mengatur nama pendek untuk file yang ditentukan. File harus berada pada volume sistem file NTFS.

Sintaks

BOOL SetFileShortNameA(
  [in] HANDLE hFile,
  [in] LPCSTR lpShortName
);

Parameter

[in] hFile

Handel ke file. File harus dibuka dengan akses GENERIC_ALL kanan atau GENERIC_WRITE|DELETE, dan dengan atribut file FILE_FLAG_BACKUP_SEMANTICS .

[in] lpShortName

Penunjuk ke string yang menentukan nama pendek untuk file.

Menentukan string kosong (panjang nol) akan menghapus nama file pendek, jika ada untuk file yang ditentukan oleh parameter hFile . Jika nama file pendek tidak ada, fungsi tidak akan melakukan apa pun dan mengembalikan keberhasilan.

Windows Server 2008, Windows Vista, Windows Server 2003 dan Windows XP: Perilaku ini tidak didukung. Parameter harus berisi string yang valid dari satu atau beberapa karakter.

Mengembalikan nilai

Jika fungsi berhasil, nilai yang dikembalikan bukan nol.

Jika fungsi gagal, nilai yang dikembalikan adalah nol. Untuk mendapatkan informasi kesalahan yang diperluas, hubungi GetLastError. GetLastError dapat mengembalikan salah satu kode kesalahan berikut yang khusus untuk fungsi ini.

Menampilkan kode Deskripsi
ERROR_ALREADY_EXISTS
Nama pendek yang ditentukan tidak unik.
ERROR_INVALID_PARAMETER
File yang ditentukan telah dibuka dalam mode peka huruf besar/kecil atau nama pendek yang ditentukan tidak valid.

Keterangan

Pemanggil fungsi ini harus memiliki hak istimewa SE_RESTORE_NAME . Untuk informasi selengkapnya, lihat Menjalankan dengan Hak Istimewa Khusus.

Di Windows 8 dan Windows Server 2012, fungsi ini didukung oleh teknologi berikut.

Teknologi Didukung
Protokol Server Message Block (SMB) 3.0 Ya
SMB 3.0 Transparent Failover (TFO) Tidak
SMB 3.0 dengan Berbagi File Peluasan Skala (SO) Tidak
Sistem File Volume Bersama Kluster (CsvFS) Ya
Sistem File Tangguh (ReFS) Tidak
 

SMB 3.0 tidak mendukung nama pendek pada berbagi dengan kemampuan ketersediaan berkelanjutan . Nama pendek tidak disarankan pada CsvF.

Catatan

Header winbase.h mendefinisikan SetFileShortName sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta praprosesor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows XP [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2003 [hanya aplikasi desktop]
Target Platform Windows
Header winbase.h (termasuk Windows.h)
Pustaka Kernel32.lib
DLL Kernel32.dll

Lihat juga

Fungsi Manajemen File

GetShortPathName