Bagikan melalui


Fungsi FsRtlMupGetProviderInfoFromFileObject (ntifs.h)

Rutinitas FsRtlMupGetProviderInfoFromFileObject mendapatkan informasi tentang pengalih jaringan yang terdaftar di beberapa penyedia UNC (MUP) dari objek file untuk file yang terletak di sistem file jarak jauh.

Sintaks

NTSTATUS FsRtlMupGetProviderInfoFromFileObject(
  [in]      PFILE_OBJECT pFileObject,
  [in]      ULONG        Level,
  [out]     PVOID        pBuffer,
  [in, out] PULONG       pBufferSize
);

Parameter

[in] pFileObject

Penunjuk ke objek file file yang terletak di sistem file jarak jauh.

[in] Level

Tingkat informasi yang dikembalikan oleh rutinitas FsRtlMupGetProviderInfoFromFileObject . Untuk informasi selengkapnya tentang nilai yang mungkin untuk parameter ini, lihat bagian Keterangan.

[out] pBuffer

Penunjuk ke buffer yang menerima informasi yang dikembalikan oleh rutinitas FsRtlMupGetProviderInfoFromFileObject . Untuk informasi selengkapnya tentang format data yang dikembalikan dalam buffer ini, lihat bagian Keterangan.

[in, out] pBufferSize

Penunjuk ke variabel berjenis ULONG yang berisi ukuran, dalam byte, dari buffer yang diacu oleh parameter pBuffer . Jika rutinitas berhasil, variabel ini menerima ukuran, dalam byte, data yang dikembalikan dalam buffer.

Nilai kembali

Rutinitas FsRtlMupGetProviderInfoFromFileObject mengembalikan salah satu nilai NTSTATUS berikut.

Menampilkan kode Deskripsi
STATUS_SUCCESS
Informasi tentang pengalihan jaringan berhasil dikembalikan dalam buffer yang diarahkan oleh parameter pBuffer .
STATUS_INVALID_PARAMETER
Salah satu parameter adalah NULL atau berisi nilai yang tidak valid.
STATUS_OBJECT_NAME_NOT_FOUND
Objek file yang diacu oleh parameter pFileObject tidak sesuai dengan objek file sistem file jarak jauh yang dibuka sepenuhnya.
STATUS_BUFFER_TOO_SMALL
Ukuran buffer yang diacu oleh parameter pBuffer terlalu kecil untuk mengembalikan data apa pun. Dalam situasi ini, variabel yang ditunjukkan oleh parameter pBufferSize menerima ukuran yang diperlukan, dalam byte, dari buffer.
STATUS_BUFFER_OVERFLOW
Ukuran buffer yang diacu oleh parameter pBuffer terlalu kecil untuk mengembalikan semua data. Hanya data yang akan pas di buffer yang dikembalikan. Dalam situasi ini, variabel yang ditunjukkan oleh parameter pBufferSize menerima ukuran yang diperlukan, dalam byte, dari buffer.

Keterangan

Driver filter sistem file dapat memanggil rutinitas FsRtlMupGetProviderInfoFromFileObject untuk mendapatkan informasi tentang pengalih jaringan dari objek file untuk file yang terletak di sistem file jarak jauh. Jumlah informasi yang dikembalikan oleh rutinitas FsRtlMupGetProviderInfoFromFileObject tergantung pada nilai parameter Level . Jika parameter Level diatur ke 1, rutinitas FsRtlMupGetProviderInfoFromFileObject mengembalikan struktur FSRTL_MUP_PROVIDER_INFO_LEVEL_1 dalam buffer yang diacu oleh parameter pBuffer . Struktur FSRTL_MUP_PROVIDER_INFO_LEVEL_1 didefinisikan sebagai berikut:

typedef struct _FSRTL_MUP_PROVIDER_INFO_LEVEL_1 {
  ULONG32  ProviderId;
} FSRTL_MUP_PROVIDER_INFO_LEVEL_1, *PFSRTL_MUP_PROVIDER_INFO_LEVEL_1;

Jika parameter Level diatur ke 2, rutinitas FsRtlMupGetProviderInfoFromFileObject mengembalikan struktur FSRTL_MUP_PROVIDER_INFO_LEVEL_2 dalam buffer yang diacu oleh parameter pBuffer . Struktur FSRTL_MUP_PROVIDER_INFO_LEVEL_2 didefinisikan sebagai berikut:

typedef struct _FSRTL_MUP_PROVIDER_INFO_LEVEL_2 {
  ULONG32  ProviderId;
  UNICODE_STRING  ProviderName;
} FSRTL_MUP_PROVIDER_INFO_LEVEL_2, *PFSRTL_MUP_PROVIDER_INFO_LEVEL_2;

Driver filter sistem file dapat dengan cepat membandingkan nilai pengidentifikasi penyedia dengan nilai pengidentifikasi penyedia lain tanpa perlu melakukan perbandingan string.

Nilai pengidentifikasi penyedia UNC untuk pengalihan jaringan tertentu tetap sama jika pengalih jaringan dibongkar dari sistem dan kemudian dimuat ulang kembali ke dalam sistem.

Untuk mendapatkan pengidentifikasi penyedia UNC dari pengalihan jaringan dari nama perangkat pengalih jaringan, driver filter sistem file dapat memanggil rutinitas FsRtlMupGetProviderIdFromName .

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Fungsi FsRtlMupGetProviderInfoFromFileObject adalah Windows Vista
Target Platform Universal
Header ntifs.h (termasuk Ntifs.h)
Pustaka NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

Lihat juga

FsRtlMupGetProviderIdFromName