Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Penting Contoh dalam topik ini membahas penggunaan makro BINPLACE_PLACEFILE dan BinPlace place file. Makro dan file ini sudah usang di Windows 7 versi Windows Driver Kit dan mungkin tidak didukung dalam versi WDK yang akan datang.
Topik ini menyediakan contoh penggunaan BinPlace dari baris perintah.
Pertama, Anda dapat mengatur direktori tujuan akar sebagai berikut:
set _NTTREE=d:\ProjectRoot
Kemudian Anda dapat mengatur jalur lokasi file dan nama file dengan cara berikut:
set BINPLACE_PLACEFILE=d:\mystuff\myplacefile.txt
Biarkan konten file d:\mystuff\myplacefile.txt menjadi sebagai berikut:
; This is a simple place file.
commonmodule.dll retail
application.exe files\bin
mydriver.sys *\drivertree
extra.cab appendix
Sekarang Anda dapat menjalankan BinPlace dengan perintah berikut:
binplace g:\somelocation\extra.cab
Karena extra.cab bukan file yang dapat dieksekusi, BinPlace hanya akan memindahkannya. Direktori tujuan akar adalah d:\projectroot. Direktori kelas untuk file ini ditentukan dalam file lokasi sebagai lampiran. Subdirektori jenis file adalah cab (ekstensi nama file yang sedang dipindahkan). Dengan demikian, file ini disalin ke lokasi d:\projectroot\appendix\cab\extra.cab.
Sekarang gunakan BinPlace pada file yang dapat dieksekusi dan file simbolnya. Untuk melakukan ini, Anda menentukan nama file yang dapat dieksekusi -- BinPlace akan menemukan file simbol terkait.
Ketika Anda meneruskan nama file yang dapat dieksekusi ke BinPlace, ia mencari file simbolnya di direktori yang sama dengan file yang dapat dieksekusi. Jika tidak menemukannya di sana, itu membaca catatan CodeView yang disimpan dalam file yang dapat dieksekusi; jika menemukan jalur file simbol dalam rekaman tersebut, ia mencari file simbol di jalur tersebut.
Nota Jika Anda menentukan nama file simbol secara eksplisit, BinPlace hanya akan memindahkannya, bukan memprosesnya.
binplace -a -x -s d:\stripped -n g:\full g:\builddir\application.exe
File yang dapat dieksekusi menggunakan direktori tujuan akar yang sama seperti sebelumnya. Direktori kelasnya adalah files\bin. Dengan demikian, diletakkan di dalam d:\projectroot\files\bin\application.exe.
File simbol ditempatkan di dua lokasi. File simbol lengkap (termasuk simbol privat dan publik) masuk ke g:\full\files\bin\exe\application.pdb. File simbol yang dilucuti (hanya berisi simbol publik) masuk ke d:\stripped\files\bin\exe\application.pdb.
Sekarang, gunakan perintah serupa pada commonmodule.dll:
binplace -a -x -s d:\stripped -n g:\full g:\builddir\commonmodule.dll
Kali ini, subdirektori kelas adalah ritel. Untuk file yang dapat dieksekusi, nama direktori ini adalah kode untuk "jangan gunakan subdirektori kelas," sehingga ditempatkan di d:\projectroot\application.exe. Berkas simbol ditempatkan dalam lokasi g:\full\retail\dll\application.pdb dan d:\stripped\retail\dll\application.pdb.
Terakhir, gunakan BinPlace di mydriver.sys dan hilangkan sakelar -n :
binplace -a -x -s d:\stripped g:\builddir\mydriver.sys
Di sini subdirektori kelas adalah */drivertree. Untuk file yang dapat dieksekusi, tanda bintang (*) diganti dengan jenis prosesor. Dengan asumsi Anda berjalan di komputer x86, file yang dapat dieksekusi ditempatkan di d:\projectroot\i386\drivertree\application.exe. File simbol yang telah dibersihkan ditempatkan dalam g:\full\drivertree\sys\application.pdb, karena tanda bintang tidak berpengaruh terhadap file simbol. Karena sakelar -n dihilangkan, file simbol lengkap tidak ditempatkan di mana pun.