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.
Perintah tanda angka (#) mencari pola yang ditentukan dalam kode pembbongkaran.
# [Pattern] [Address [ L Size ]]
Parameter
Pola
Menentukan pola yang akan dicari dalam kode pembbongkaran. Pola dapat berisi berbagai karakter kartubebas dan penentu. Untuk informasi selengkapnya tentang sintaks, lihat Sintaks Wildcard String. Jika Anda ingin menyertakan spasi dalam Pola, Anda harus mengapit pola dalam tanda kutip. Polanya tidak peka huruf besar/kecil. Jika sebelumnya Anda telah menggunakan # perintah dan Anda menghilangkan Pola, perintah menggunakan kembali pola yang terakhir digunakan.
Alamat
Menentukan alamat tempat pencarian dimulai. Untuk informasi selengkapnya tentang sintaks, lihat Sintaks Alamat dan Rentang Alamat.
Ukuran
Menentukan jumlah instruksi yang akan dicari. Jika Anda menghilangkan Ukuran, pencarian berlanjut hingga kecocokan pertama terjadi.
Lingkungan
| Item | Deskripsi |
|---|---|
| Mode | Mode pengguna, mode kernel |
| Target | Live, crash dump |
| Platform | Semua |
Informasi Tambahan
Untuk informasi selengkapnya tentang penelusuran kesalahan rakitan dan perintah terkait, lihat Debugging dalam Mode Rakitan.
Keterangan
Jika sebelumnya Anda menggunakan # perintah dan menghilangkan Alamat, pencarian dimulai di mana pencarian sebelumnya berakhir.
Perintah ini bekerja dengan mencari teks yang dibongkar untuk pola yang ditentukan. Anda dapat menggunakan perintah ini untuk menemukan nama register, konstanta, atau string lain yang muncul dalam output pembbongkaran. Anda dapat mengulangi perintah tanpa parameter Alamat untuk menemukan kemunculan pola yang berturut-turut.
Anda dapat melihat instruksi pembbongkaran dengan menggunakan perintah u (Unassemble) atau dengan menggunakan jendela Disassembly di WinDbg. Tampilan pembongkaran berisi hingga empat bagian: Offset alamat, Kode biner, mnemonik bahasa rakitan, dan detail bahasa assembly. Contoh berikut menunjukkan kemungkinan tampilan.
0040116b 45 inc ebp
0040116c fc cld
0040116d 8945b0 mov eax,[ebp-0x1c]
Perintah # dapat mencari teks dalam satu bagian dari tampilan pembbongkaran. Misalnya, Anda dapat menggunakan # eax 0040116b untuk menemukan mov eax,[ebp-0x1c] instruksi di alamat 0040116d. Perintah berikut juga menemukan instruksi ini.
# [ebp?0x 0040116b
# mov 0040116b
# 8945* 0040116b
# 116d 0040116b
Namun, Anda tidak dapat mencari mov eax* sebagai satu unit, karena mov dan eax muncul di berbagai bagian layar. Sebagai gantinya, gunakan mov*eax.
Sebagai contoh tambahan, Anda dapat mengeluarkan perintah berikut untuk mencari referensi pertama ke fungsi strlen setelah titik masuk utama.
# strlen main
Demikian pula, Anda dapat mengeluarkan dua perintah berikut untuk menemukan instruksi jnz pertama setelah alamat 0x779F9FBA dan kemudian menemukan instruksi jnz berikutnya setelah itu.
# jnz 779f9fba#
Saat Anda menghilangkan Pola atau Alamat, nilainya didasarkan pada penggunaan # perintah sebelumnya. Jika Anda menghilangkan salah satu parameter saat pertama kali Anda mengeluarkan # perintah, tidak ada pencarian yang dilakukan. Namun, nilai Pola dan Alamat diinisialisasi bahkan dalam situasi ini.
Jika Anda menyertakan Pola atau Alamat, nilainya diatur ke nilai yang dimasukkan. Jika Anda menghilangkan Alamat, alamat diinisialisasi ke nilai penghitung program saat ini. Jika Anda menghilangkan Pola, pola tersebut diinisialisasi ke pola kosong.