Bagikan melalui


WinPE: Aplikasi Debug

Anda dapat menggunakan Windows Debuggers, seperti Ntsd.exe, Cdb.exe, dan Windbg.exe, dan alat pendukung untuk men-debug aplikasi di Windows PE dan untuk men-debug kernel Windows PE. Alat penelusuran kesalahan disertakan dalam SDK Windows 10. Anda harus membuat alat penelusuran kesalahan tersedia di komputer Windows PE dengan menyalinnya secara lokal atau menggunakannya dari berbagi.

Untuk men-debug Windows PE dari jarak jauh, Anda mungkin perlu menonaktifkan firewall bawaan pada PC:

wpeutil disablefirewall

Penelusuran kesalahan mode pengguna

Metode penelusuran kesalahan mode pengguna yang paling mudah adalah menjalankan server proses pada komputer Windows PE, dan menyambungkannya dengan menggunakan debugger di komputer lain. Server proses disertakan dengan alat penelusuran kesalahan di SDK Windows 10.

Untuk menjalankan server proses dalam mode pengguna

  1. Salin alat Windows Debugging Process Server: dbgsrv.exe, dari folder alat penelusuran kesalahan SDK Windows 10 (misalnya: C:\Program Files (x86)\Windows Kits\10.0\Debuggers\x64), ke komputer Windows PE.

  2. Pada prompt perintah Windows PE, nonaktifkan firewall.

    wpeutil disablefirewall
    
  3. Mulai Server Proses Debugging Windows, menentukan metode koneksi ke PC, misalnya, port TCP:

    dbgsrv.exe -t tcp:port=1234
    

    Untuk informasi selengkapnya, lihat Mengaktifkan Server Proses (Windows Debuggers).

  4. Dari komputer jarak jauh, gunakan server proses untuk melampirkan atau memulai proses pada komputer tujuan Windows PE:

    windbg -premote tcp:server=Server,port=1234
    

    Untuk informasi selengkapnya, lihat Mengaktifkan Klien Cerdas (Windows Debuggers).

Dimungkinkan juga untuk menjalankan debugger langsung di komputer Windows PE. Namun, melakukannya memerlukan pengaturan simbol dan jalur sumber setelah setiap boot ulang komputer Windows PE. Kami menyarankan agar Anda melakukan penelusuran kesalahan dari komputer yang menjalankan versi lengkap Windows, seperti yang dijelaskan dalam prosedur ini.

Prosedur penelusuran kesalahan berikut berguna saat Anda ingin melewati startnet.cmd atau setup.exe, dan melanjutkan langsung ke perintah untuk tujuan penelusuran kesalahan. Prosedur ini melewati semua inisialisasi, termasuk penyiapan, dan tidak menjalankan perintah, seperti Wpeinit.exe. Prosedur ini harus dilakukan secara online pada sistem operasi online.

Untuk mengaktifkan penelusuran kesalahan mode pengguna sebelum inisialisasi apa pun

  1. Hapus file winpeshl.ini, jika ada. Jika file winpeshl.ini tidak ada, penelusuran kesalahan mode pengguna dapat diakses secara default.

  2. Tahan tombol Ctrl selama boot sebelum prompt perintah ditampilkan. Perintah muncul.

  3. Lanjutkan dengan penelusuran kesalahan.

Penelusuran kesalahan mode kernel

Untuk men-debug dalam mode kernel, Anda harus mengaktifkan debugging mode kernel sebelum sistem di-boot. File konfigurasi boot memiliki pengaturan untuk debugging mode kernel, yang diaktifkan dengan menggunakan alat baris perintah bcdedit.exe untuk memodifikasi penyimpanan Boot Configuration Data (BCD). Penelusuran kesalahan kernel hanya dapat dilakukan dengan menggunakan bcdedit.exe. Bcdedit.exe terletak di direktori \Windows\System32 dari partisi Windows.

Pengaturan debugger default adalah sebagai berikut:

identifier              {dbgsettings} 
debugtype               Serial 
debugport               1 
baudrate                115200

Untuk membuat ISO untuk lingkungan VM, aktifkan kernel dengan entri BCD sebelum membuat ISO.

Untuk informasi tentang cara mengubah penyimpanan BCD default (default.bcd), lihat Cara Mengubah Penyimpanan BCD Menggunakan Bcdedit.

Untuk mengaktifkan debugging mode kernel

  1. Temukan penyimpanan BCD, yang terkandung dalam file bernama bcd. File ini terletak di dalam direktori boot di akar media yang berisi citra Windows PE.

  2. Pada prompt perintah, ketik perintah bcdedit berikut untuk mengatur bendera debug penyimpanan BCD yang digunakan untuk mem-boot gambar ke debug on:

    bcdedit /store <path to winpe>/boot/bcd /set {default} debug on
    

    mungkin {default} perlu digantikan oleh pengidentifikasi unik (UID) dari opsi boot untuk Windows PE.

    Atau, Anda juga dapat mengaktifkan penelusuran kesalahan kernel dengan menekan F8 selama boot dan memilih opsi debug.

    Catatan Untuk menggunakan server simbol dari dalam Windows PE, gunakan net use perintah pada simbol server dan berbagi file.

Untuk informasi selengkapnya tentang opsi baris perintah yang mengontrol penelusuran kesalahan, lihat Opsi Command-Line BCDEdit.

Untuk mengaktifkan penelusuran kesalahan mode kernel jaringan

Pada PC teknisi, jalankan perintah berikut untuk membuat gambar Windows PE dengan pengaturan debugging mode kernel jaringan:

  1. Mulai Lingkungan Alat Penyebaran dan Pencitraan sebagai administrator.

  2. Jalankan salin untuk membuat salinan file Pe Windows yang berfungsi.

    copype amd64 d:\WinPE_amd64
    
  3. Jika PC target adalah sistem UEFI, jalankan perintah berikut (PORT dan kunci berikut adalah contohnya. PORT dapat diatur dari 50000 hingga 50039. Untuk kunci, lihat Kunci enkripsi):

    bcdedit /store d:\WinPE_amd64\media\EFI\Microsoft\Boot\BCD /set {default} debug on
    bcdedit /store d:\WinPE_amd64\media\EFI\Microsoft\Boot\BCD /set {default} bootdebug on
    bcdedit /store d:\WinPE_amd64\media\EFI\Microsoft\Boot\BCD /dbgsettings NET HOSTIP:xxx.xxx.xxx.xxx PORT:50005 key:5.5.5.5
    
  4. Jika PC target adalah sistem BIOS warisan, jalankan perintah berikut (PORT dan kunci berikut adalah contohnya. PORT dapat diatur dari 50000 hingga 50039. Untuk kunci, lihat Kunci enkripsi):

    bcdedit /store d:\WinPE_amd64\media\Boot\BCD /set {default} debug on
    bcdedit /store d:\WinPE_amd64\media\Boot\BCD /set {default} bootdebug on
    bcdedit /store d:\WinPE_amd64\media\Boot\BCD /dbgsettings NET HOSTIP:xxx.xxx.xxx.xxx PORT:50005 key:5.5.5.5
    
  5. Gunakan MakeWinPEMedia dengan opsi /ISO untuk membuat file ISO yang berisi file PE Windows, jalankan perintah berikut:

    makewinpemedia /iso d:\WinPE_amd64\winpe_x64_debug.iso
    

Di PC target, mulailah dengan winpe_x64_debug.iso dan jalankan perintah berikut:

windbg.exe -k net:port=50005,key=5.5.5.5

WinPE untuk Windows 10

WinPE: Pasang dan Sesuaikan

Opsi Command-Line Wpeutil

referensiWinpeshl.ini: Meluncurkan aplikasi saat WinPE dimulai

Opsi Command-Line BCDEdit