Bagikan melalui


Mengirim Output ke Debugger

Mode pengguna dan kode mode kernel menggunakan rutinitas yang berbeda untuk mengirim output ke debugger.

User-Mode Rutinitas Output

Rutinitas OutputDebugString mengirimkan string yang dihentikan null ke debugger proses panggilan. Dalam driver mode pengguna, OutputDebugString menampilkan string di jendela Perintah Debugger. Jika debugger tidak berjalan, rutinitas ini tidak berpengaruh. OutputDebugString tidak mendukung argumen variabel string berformat printf .

Prototipe untuk rutinitas ini adalah sebagai berikut:

VOID OutputDebugString(
   LPCTSTR lpOutputString
   );

Untuk dokumentasi lengkap rutinitas ini, lihat Berkomunikasi dengan Debugger.

Kernel-Mode Rutinitas Output

Rutinitas DbgPrint menampilkan output di jendela debugger. Rutinitas ini mendukung parameter format cetak dasar. Hanya driver mode kernel yang dapat memanggil DbgPrint.

Rutinitas DbgPrintEx mirip dengan DbgPrint, tetapi memungkinkan Anda untuk "menandai" pesan Anda. Saat menjalankan debugger, Anda hanya dapat mengizinkan pesan tersebut dengan tag tertentu yang akan dikirim. Ini memungkinkan Anda untuk hanya melihat pesan yang Anda minati. Untuk detailnya, lihat Membaca dan Memfilter Pesan Penelusuran Kesalahan.

Makro KdPrint dan KdPrintEx identik dengan DbgPrint dan DbgPrintEx, masing-masing, ketika dikompilasi di lingkungan build yang diperiksa. Ketika dikompilasi di lingkungan build gratis, mereka tidak berpengaruh.