Fungsi WdfDeviceCreateSymbolicLink (wdfdevice.h)

[Berlaku untuk KMDF dan UMDF]

Metode WdfDeviceCreateSymbolicLink membuat tautan simbolis ke perangkat tertentu.

Sintaks

NTSTATUS WdfDeviceCreateSymbolicLink(
  [in] WDFDEVICE        Device,
  [in] PCUNICODE_STRING SymbolicLinkName
);

Parameter

[in] Device

Handel ke objek perangkat kerangka kerja.

[in] SymbolicLinkName

Penunjuk ke struktur UNICODE_STRING yang berisi nama yang terlihat pengguna untuk perangkat.

Nilai kembali

Jika operasi berhasil, WdfDeviceCreateSymbolicLink mengembalikan STATUS_SUCCCESS. Nilai pengembalian tambahan meliputi:

Menampilkan kode Deskripsi
STATUS_INSUFFICIENT_RESOURCES
Sistem tidak dapat mengalokasikan ruang untuk menyimpan nama perangkat.
 

Metode ini mungkin mengembalikan nilai NTSTATUS lainnya.

Pemeriksaan bug terjadi jika driver menyediakan handel objek yang tidak valid.

Keterangan

Jika driver membuat tautan simbolis untuk perangkat, aplikasi dapat menggunakan nama tautan simbolis untuk mengakses perangkat. Biasanya, alih-alih menyediakan tautan simbolis, driver berbasis kerangka kerja menyediakan antarmuka perangkat yang dapat digunakan aplikasi untuk mengakses perangkat mereka.

Jika perangkat dihapus secara tiba-tiba (dihapus secara mendadak), kerangka kerja akan menghapus tautan simbolis ke perangkat. Driver kemudian dapat menggunakan nama tautan simbolis untuk instans baru perangkat.

Contoh

Contoh kode berikut dari driver KMDF membuat nama perangkat MS-DOS yang dapat digunakan aplikasi untuk mengakses perangkat.

#define DOS_DEVICE_NAME  L"\\DosDevices\\MyDevice"
DECLARE_CONST_UNICODE_STRING(dosDeviceName, DOS_DEVICE_NAME);
NTSTATUS  status;

status = WdfDeviceCreateSymbolicLink(
                                     controlDevice,
                                     &dosDeviceName
                                     );
if (!NT_SUCCESS(status)) {
    goto Error;
}

Driver UMDF harus memberikan nama tautan simbolis di namespace Layanan DosDevices global, seperti yang diilustrasikan contoh kode berikut.

#define DOS_DEVICE_NAME  L"\\DosDevices\\Global\\MyDevice"
DECLARE_CONST_UNICODE_STRING(dosDeviceName, DOS_DEVICE_NAME);
NTSTATUS  status;

status = WdfDeviceCreateSymbolicLink(
                                     controlDevice,
                                     &dosDeviceName
                                     );
if (!NT_SUCCESS(status)) {
    goto Error;
}

Untuk informasi tentang namespace \DosDevices global dan lokal, lihat Nama Perangkat MS-DOS Lokal dan Global.

Persyaratan

Persyaratan Nilai
Target Platform Universal
Versi KMDF minimum 1,0
Versi UMDF minimum 2.0
Header wdfdevice.h (termasuk Wdf.h)
Pustaka Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL PASSIVE_LEVEL
Aturan kepatuhan DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf)

Lihat juga

UNICODE_STRING