Bagikan melalui


.kdfiles (Atur Peta Penggantian Driver)

Perintah .kdfiles membaca file dan menggunakan isinya sebagai peta penggantian driver.

.kdfiles MapFile
.kdfiles -m OldDriver NewDriver
.kdfiles -s SaveFile
.kdfiles -c
.kdfiles

Parameter

MapFile
Menentukan berkas peta penggantian driver yang akan dibaca.

-m
Menambahkan asosiasi pengganti driver ke daftar asosiasi saat ini.

OldDriver
Menentukan jalur dan nama file driver sebelumnya pada komputer target. Sintaks untuk OldDriver sama dengan baris pertama setelah peta dalam file penggantian driver. Untuk informasi selengkapnya tentang sintaks ini, lihat Memetakan File Driver.

NewDriver
Menentukan jalur dan nama file driver baru. Pengandar ini bisa berada pada komputer host atau di beberapa lokasi jaringan lainnya. Sintaks untuk NewDriver sama dengan baris kedua setelah peta dalam file penggantian driver. Untuk informasi selengkapnya tentang sintaks ini, lihat Memetakan File Driver.

-s
Membuat file dan menulis asosiasi penggantian driver saat ini ke file tersebut.

SaveFile
Menentukan nama file yang akan dibuat.

-c
Menghapus peta penggantian driver yang ada. (Opsi ini tidak mengubah file peta itu sendiri. Sebagai gantinya, opsi ini menghapus pengaturan peta debugger saat ini.)

Lingkungan

Mode

Mode kernel saja

Target

Penelusuran kesalahan langsung saja

Platform

Prosesor berbasis x86

Informasi Tambahan

Untuk informasi selengkapnya tentang dan contoh penggantian driver dan penggantian modul mode kernel lainnya, deskripsi format untuk file peta penggantian driver, dan pembatasan untuk menggunakan fitur ini, lihat Memetakan File Driver.

Keterangan

Jika Anda menggunakan perintah .kdfiles tanpa parameter, debugger menampilkan jalur dan nama file peta penggantian driver saat ini dan set asosiasi pengganti saat ini.

Saat Anda menjalankan perintah ini, file MapFileyang ditentukan akan dibaca. Jika file tidak ditemukan atau jika tidak berisi teks dalam format yang tepat, debugger menampilkan pesan yang menyatakan, "Tidak dapat memuat asosiasi file".

Jika file yang ditentukan dalam format file peta penggantian driver yang benar, debugger memuat konten file dan menggunakannya sebagai peta penggantian driver. Peta ini tetap ada sampai Anda keluar dari debugger, atau sampai Anda mengeluarkan perintah .kdfiles lain.

Setelah file dibaca, peta penggantian driver tidak terpengaruh oleh perubahan berikutnya pada file (kecuali perubahan ini diikuti oleh perintah .kdfiles lain).

Penggantian File Mode Pengguna

Penggantian File Mode Pengguna ditambahkan di Windows versi 2004. Dukungan ini memungkinkan file mode pengguna berikut diganti dengan .kdfiles.

  • DLL mode pengguna (juga termasuk NTDLL dan KnownDlls)
  • EXEs mode pengguna yang merupakan gambar proses utama untuk CreateProcess

Untuk menggunakan dukungan .kdfiles mode pengguna, Anda harus terlebih dahulu mengaktifkan pemuatan simbol kernel menggunakan !gflag +ksl perintah debugger atau mengonfigurasi bendera global ksl di registri. Untuk informasi selengkapnya tentang gflag, lihat !gflag.

Contoh berikut mengilustrasikan penggunaan umum.

.kdfiles -m system32\userdll C:\myfiles\my_native_userdll.dll
.kdfiles -m system32\userdll \\server\share\my_native_userdll.dll
.kdfiles -m syswow64\ntdll.dll \\server\share\my_x86_wow64_ntdll.dll
.kdfiles -m system32\userbase.dll \\server\share\my_native_userbase.dll

Mode pengguna .kdfiles mengabaikan kegagalan apa pun untuk mencocokkan file dan tidak menampilkan pesan kesalahan ketika kegagalan terjadi.

Berhati-hatilah untuk memenuhi syarat jalur .kdfiles dengan tepat untuk mode pengguna .kdfiles. Adalah ide yang buruk untuk hanya mencocokkan ntdll.dll (bukan system32\ntdll.dll) karena jika tidak, Wow64 NTDLL akan diganti dengan yang asli. Situasi serupa dapat muncul dengan kecocokan substring ambigu lainnya.

Setelah build 20172, mekanisme .kdfiles mode pengguna akan mencoba menarik file dari debugger sampai satu upaya gagal; kemudian, nama file yang gagal ditarik tidak akan dicoba lagi untuk sesi boot, tanpa intervensi manual dari debugger untuk memodifikasi status sistem target. Pada build sebelumnya, mekanisme .kdfiles mode pengguna akan melakukan satu upaya (baik berhasil atau tidak) untuk menarik nama file tertentu per sesi boot. Kebijakan ini mengurangi overhead berkomunikasi dengan debugger untuk file yang tidak ada dalam daftar kdfiles, atau yang tidak dapat diakses untuk penggantian, seperti karena pelanggaran berbagi dari proses yang mungkin telah memuat file tertentu. Karena perilaku ini, umumnya disarankan untuk mengonfigurasi file apa pun untuk menarik daftar .kdfiles di depan, sebelum terlebih dahulu dirujuk.

Ketahui batasan dengan tidak dapat mengganti file disk yang sudah digunakan, dll. Karena banyak DLL sistem tidak akan mudah ditukar panas setelah dimuat pada awalnya, prasetel opsi gflags +ksl dan gunakan .kdfiles untuk mengganti biner mode pengguna apa pun tepat saat boot.

Untuk informasi selengkapnya tentang mengaktifkan penelusuran kesalahan boot, lihat BCDEdit /bootdebug.

Penggunaan KDNET transportasi KDNET kecepatan tinggi/latensi rendah disarankan untuk meminimalkan dampak performa sistem.

Persyaratan

Versi

Didukung di Windows XP dan versi sistem operasi Windows yang lebih baru.