Bagikan melalui


Fungsi WdfStringCreate (wdfstring.h)

[Berlaku untuk KMDF dan UMDF]

Metode WdfStringCreate membuat objek string kerangka kerja dan secara opsional menetapkan string Unicode tertentu ke objek.

Sintaks

NTSTATUS WdfStringCreate(
  [in, optional] PCUNICODE_STRING       UnicodeString,
  [in, optional] PWDF_OBJECT_ATTRIBUTES StringAttributes,
  [out]          WDFSTRING              *String
);

Parameter

[in, optional] UnicodeString

Penunjuk ke struktur UNICODE_STRING yang berisi konstanta string Unicode. Kerangka kerja menyalin string ke objek string kerangka kerja baru. Penunjuk ini bersifat opsional dan dapat berupa NULL.

[in, optional] StringAttributes

Penunjuk ke struktur WDF_OBJECT_ATTRIBUTES yang berisi atribut yang disediakan driver untuk objek string baru. Parameter ini bersifat opsional dan dapat WDF_NO_OBJECT_ATTRIBUTES.

[out] String

Penunjuk ke lokasi yang menerima handel ke objek string baru.

Nilai kembali

WdfStringCreate mengembalikan STATUS_SUCCESS jika operasi berhasil. Jika tidak, metode mungkin mengembalikan salah satu nilai berikut:

Menampilkan kode Deskripsi
STATUS_INVALID_DEVICE_REQUEST

WdfStringCreate tidak dipanggil di IRQL = PASSIVE_LEVEL.

STATUS_INVALID_PARAMETER
Parameter yang tidak valid ditentukan.
STATUS_INSUFFICIENT_RESOURCES
Objek string tidak dapat dialokasikan.
 

Untuk daftar nilai pengembalian lain yang mungkin dikembalikan oleh metode WdfStringCreate , lihat Kesalahan Pembuatan Objek Kerangka Kerja.

Metode ini juga mungkin mengembalikan nilai NTSTATUS lainnya.

Keterangan

Induk default untuk objek string kerangka kerja adalah objek driver kerangka kerja driver. Namun, kecuali string dikaitkan dengan driver, driver Anda harus mengatur anggota ParentObject dari struktur WDF_OBJECT_ATTRIBUTES ke objek yang mewakili cakupan string. Biasanya, string khusus perangkat dan objek induknya harus menjadi objek perangkat kerangka kerja.

Jika driver Anda menyediakan fungsi panggilan balik EvtCleanupCallback atau EvtDestroyCallback untuk objek string kerangka kerja, perhatikan bahwa kerangka kerja memanggil fungsi panggilan balik ini di IRQL = PASSIVE_LEVEL.

Untuk informasi selengkapnya tentang objek string kerangka kerja, lihat Menggunakan Objek String.

Contoh

Contoh kode berikut menginisialisasi struktur WDF_OBJECT_ATTRIBUTES lalu membuat objek string kerangka kerja.

NTSTATUS  status;
WDFSTRING  stringHandle = NULL;
WDF_OBJECT_ATTRIBUTES  attributes;

WDF_OBJECT_ATTRIBUTES_INIT(&attributes);
attributes.ParentObject = pDeviceContext->Device;
status = WdfStringCreate(
                         NULL,
                         &attributes,
                         &stringHandle
                         );
if (!NT_SUCCESS(status)){
    return status;
}

Persyaratan

Persyaratan Nilai
Target Platform Universal
Versi KMDF minimum 1,0
Versi UMDF minimum 2.0
Header wdfstring.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

WDF_OBJECT_ATTRIBUTES

WdfStringGetUnicodeString