Fungsi DefineDosDeviceW (fileapi.h)
Menentukan, mendefinisikan ulang, atau menghapus nama perangkat MS-DOS.
Sintaks
BOOL DefineDosDeviceW(
[in] DWORD dwFlags,
[in] LPCWSTR lpDeviceName,
[in, optional] LPCWSTR lpTargetPath
);
Parameter
[in] dwFlags
Aspek yang dapat dikontrol dari fungsi DefineDosDevice . Parameter ini bisa menjadi satu atau beberapa nilai berikut.
Nilai | Makna |
---|---|
|
Jika nilai ini ditentukan bersama dengan DDD_REMOVE_DEFINITION, fungsi akan menggunakan kecocokan yang tepat untuk menentukan pemetaan mana yang akan dihapus. Gunakan nilai ini untuk memastikan bahwa Anda tidak menghapus sesuatu yang tidak Anda tentukan. |
|
Jangan menyiarkan pesan WM_SETTINGCHANGE . Secara default, pesan ini disiarkan untuk memberi tahu shell dan aplikasi perubahan. |
|
Menggunakan string lpTargetPath apa adanya. Jika tidak, itu dikonversi dari jalur MS-DOS ke jalur. |
|
Menghapus definisi yang ditentukan untuk perangkat yang ditentukan. Untuk menentukan definisi mana yang akan dihapus, fungsi ini memandu daftar pemetaan untuk perangkat, mencari kecocokan lpTargetPath terhadap awalan setiap pemetaan yang terkait dengan perangkat ini. Pemetaan pertama yang cocok adalah yang dihapus, lalu fungsi kembali.
Jika lpTargetPath adalah NULL atau penunjuk ke string NULL , fungsi akan menghapus pemetaan pertama yang terkait dengan perangkat dan memunculkan yang terbaru yang didorong. Jika tidak ada yang tersisa untuk pop, nama perangkat akan dihapus. Jika nilai ini tidak ditentukan, string yang ditujukkan oleh parameter lpTargetPath akan menjadi pemetaan baru untuk perangkat ini. |
[in] lpDeviceName
Penunjuk ke string nama perangkat MS-DOS yang menentukan perangkat yang fungsinya menentukan, mendefinisikan ulang, atau menghapus. String nama perangkat tidak boleh memiliki titik dua sebagai karakter terakhir, kecuali huruf drive sedang ditentukan, didefinisikan ulang, atau dihapus. Misalnya, drive C akan menjadi string "C:". Dalam kasus apa pun, garis miring terbelakang berikutnya (\) diperbolehkan.
[in, optional] lpTargetPath
Penunjuk ke string jalur yang akan mengimplementasikan perangkat ini. String adalah string jalur MS-DOS kecuali bendera DDD_RAW_TARGET_PATH ditentukan, dalam hal ini string adalah string jalur.
Menampilkan 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.
Keterangan
Nama perangkat MS-DOS disimpan sebagai persimpangan di namespace objek. Kode yang mengonversi jalur MS-DOS menjadi jalur yang sesuai menggunakan persimpangan ini untuk memetakan perangkat MS-DOS dan huruf drive. Fungsi DefineDosDevice memungkinkan aplikasi untuk memodifikasi persimpangan yang digunakan untuk mengimplementasikan namespace perangkat MS-DOS.
Untuk mengambil pemetaan saat ini untuk nama perangkat MS-DOS tertentu atau untuk mendapatkan daftar semua perangkat MS-DOS yang diketahui oleh sistem, gunakan fungsi QueryDosDevice .
Untuk menentukan penetapan huruf kandar yang persisten di seluruh boot dan bukan berbagi jaringan, gunakan fungsi SetVolumeMountPoint . Jika volume yang akan dipasang sudah memiliki huruf kandar yang ditetapkan padanya, gunakan fungsi DeleteVolumeMountPoint untuk menghapus penugasan.
Huruf kandar dan nama perangkat yang ditentukan pada waktu boot sistem dilindungi dari pendefinisian ulang dan penghapusan kecuali pengguna adalah administrator.
Dimulai dengan Windows XP, fungsi ini membuat nama perangkat untuk pemanggil yang tidak berjalan dalam konteks "LocalSystem" di namespace perangkat MS-DOS Lokalnya sendiri. Jika pemanggil berjalan dalam konteks "LocalSystem", fungsi membuat nama perangkat di namespace perangkat MS-DOS Global. Untuk informasi selengkapnya, lihat Menentukan Nama Perangkat MS DOS dan Nama File, Jalur, dan Namespace.
Di Windows 8 dan Windows Server 2012, fungsi ini didukung oleh teknologi berikut.
Teknologi | Didukung |
---|---|
Protokol Server Message Block (SMB) 3.0 | Tidak |
SMB 3.0 Transparent Failover (TFO) | Tidak |
SMB 3.0 dengan Berbagi File Peluasan Skala (SO) | Tidak |
Sistem File Volume Bersama Kluster (CsvFS) | Tidak |
Sistem File Tangguh (ReFS) | Tidak |
SMB tidak mendukung fungsi manajemen volume. Untuk CsvF, nama baru tidak akan direplikasi ke node lain pada kluster.
Contoh
Misalnya, lihat Mengedit Penetapan Huruf Drive.
Persyaratan
Klien minimum yang didukung | Windows XP [hanya aplikasi desktop] |
Server minimum yang didukung | Windows Server 2003 [hanya aplikasi desktop] |
Target Platform | Windows |
Header | fileapi.h (sertakan Windows.h) |
Pustaka | Kernel32.lib |
DLL | Kernel32.dll |