Rutinitas MRxLowIOSubmit[LOWIO_OP_FSCTL]
Rutinitas MRxLowIOSubmit[LOWIO_OP_FSCTL] dipanggil oleh RDBSS untuk meminta permintaan kontrol sistem file masalah pengalihan mini jaringan pada file jarak jauh.
Sintaks
PMRX_CALLDOWN MRxLowIOSubmit[LOWIO_OP_FSCTL];
NTSTATUS MRxLowIOSubmit[LOWIO_OP_FSCTL](
_Inout_ PRX_CONTEXT RxContext
)
{ ... }
Parameter
RxContext [masuk, keluar]
Penunjuk ke struktur RX_CONTEXT. Parameter ini berisi IRP yang meminta operasi.
Mengembalikan nilai
MRxLowIOSubmit[LOWIO_OP_FSCTL] mengembalikan STATUS_SUCCESS pada keberhasilan atau nilai NTSTATUS yang sesuai, seperti salah satu hal berikut ini:
Menampilkan kode | Deskripsi |
---|---|
STATUS_CONNECTION_DISCONNECTED | Sambungan terputus. |
STATUS_INSUFFICIENT_RESOURCES | Tidak ada cukup sumber daya untuk menyelesaikan permintaan. |
STATUS_INVALID_DEVICE_REQUEST | Permintaan perangkat yang tidak valid ditentukan. |
STATUS_INVALID_NETWORK_RESPONSE | Respons yang tidak valid diterima dari server jarak jauh. |
STATUS_INVALID_PARAMETER | Parameter yang tidak valid ditentukan dalam RxContext. |
STATUS_LINK_FAILED | Upaya untuk menyambungkan kembali ke server jarak jauh untuk menyelesaikan permintaan gagal. |
STATUS_NOT_IMPLEMENTED | Rutinitas ini tidak diimplementasikan. |
STATUS_NOT_SUPPORTED | FSCTL yang ditentukan tidak didukung oleh pengalih mini jaringan. |
STATUS_UNSUCCESSFUL | Panggilan tidak berhasil. |
Keterangan
RDBSS memanggil MRxLowIOSubmit[LOWIO_OP_FSCTL] sebagai tanggapan untuk menerima permintaan IRP_MJ_FILE_SYSTEM_CONTROL .
Sebelum memanggil MRxLowIOSubmit[LOWIO_OP_FSCTL], RDBSS memodifikasi anggota berikut dalam struktur RX_CONTEXT yang ditujukkan oleh parameter RxContext :
Anggota LowIoContext.Operation diatur ke LOWIO_OP_FSCTL.
Anggota LowIoContext.ResourceThreadId diatur ke utas proses yang memulai operasi di RDBSS.
Anggota LowIoContext.ParamsFor.FsCtl.FsControlCode diatur ke kode kontrol utama FSCTL.
Anggota LowIoContext.ParamsFor.FsCtl.MinorFunction diatur ke kode kontrol minor FSCTL.
Anggota LowIoContext.ParamsFor.FsCtl.pInputBuffer diatur ke buffer input.
Anggota LowIoContext.ParamsFor.FsCtl.InputBufferLength diatur ke panjang buffer input.
Anggota LowIoContext.ParamsFor.FsCtl.pOutputBuffer diatur ke buffer output.
Anggota LowIoContext.ParamsFor.FsCtl.OutputBufferLength diatur ke panjang buffer output.
Permintaan kode kontrol sistem file (FSCTL) yang ditangani oleh pengalih mini jaringan dapat diklasifikasikan ke dalam salah satu dari beberapa kategori:
FSCTL yang diimplementasikan dan digunakan oleh RDBSS dan pengalih mini jaringan
FSCTL yang diimplementasikan dan hanya digunakan oleh pengalih mini jaringan
FSCTL yang seharusnya tidak pernah dilihat oleh pengalih mini jaringan. FSCTL ini hanya dimaksudkan sebagai bantuan penelusuran kesalahan.
Sementara rutinitas MRxLowIOSubmit[LOWIO_OP_FSCTL] sedang diproses, anggota lowIoContext.ResourceThreadId dari RX_CONTEXT dijamin menunjukkan utas proses yang memulai operasi di RDBSS. Anggota lowIoContext.ResourceThreadId dari RX_CONTEXT dapat digunakan untuk merilis sumber daya input atas nama utas lain. Ketika rutinitas asinkron selesai, sumber daya input yang diperoleh dari utas awal dapat dirilis.
Persyaratan
Platform target |
Desktop |
Header |
Mrx.h (termasuk Mrx.h) |
Lihat juga
MRxLowIOSubmit[LOWIO_OP_EXCLUSIVELOCK]
MRxLowIOSubmit[LOWIO_OP_IOCTL]
MRxLowIOSubmit[LOWIO_OP_NOTIFY_CHANGE_DIRECTORY]
MRxLowIOSubmit[LOWIO_OP_SHAREDLOCK]
MRxLowIOSubmit[LOWIO_OP_UNLOCK]
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk