Metode IDebugEventCallbacks::ChangeDebuggeeState (dbgeng.h)

Metode panggilan balik ChangeDebuggeeState dipanggil oleh mesin saat membuat atau mendeteksi perubahan pada target.

Sintaks

HRESULT ChangeDebuggeeState(
  [in] ULONG   Flags,
  [in] ULONG64 Argument
);

Parameter

[in] Flags

Menentukan jenis perubahan yang dilakukan pada target. Bendera mungkin mengambil salah satu nilai berikut:

Nilai Deskripsi
DEBUG_CDS_ALL Terjadi perubahan umum pada target. Misalnya, target telah dieksekusi, atau mesin baru saja melekat pada target.
DEBUG_CDS_REGISTERS Prosesor mendaftar untuk target telah berubah.
DEBUG_CDS_DATA Ruang data target telah berubah.
DEBUG_CDS_REFRESH Beri tahu klien GUI untuk me-refresh jendela debugger.

[in] Argument

Menyediakan informasi tambahan tentang perubahan target. Interpretasi nilai Argumen tergantung pada nilai Bendera:

DEBUG_CDS_ALL
Nilai Argumen adalah nol.
DEBUG_CDS_REGISTERS
Jika satu register telah berubah, nilai Argumen adalah indeks dari register tersebut. Jika tidak, nilai Argumen adalah DEBUG_ANY_ID.
DEBUG_CDS_DATA
Nilai Argumen menentukan ruang data mana yang diubah. Tabel berikut berisi kemungkinan nilai Argumen.
Nilai Deskripsi
DEBUG_DATA_SPACE_VIRTUAL Memori virtual target telah berubah.
DEBUG_DATA_SPACE_PHYSICAL Memori fisik target telah berubah.
DEBUG_DATA_SPACE_CONTROL Memori kontrol target telah berubah.
DEBUG_DATA_SPACE_IO Port I/O target telah menerima input atau output.
DEBUG_DATA_SPACE_MSR Model-Specific Register (MSR) target telah berubah.
DEBUG_DATA_SPACE_BUS_DATA Memori bus target telah berubah.
 
DEBUG_CDS_REFRESH
Tabel berikut berisi kemungkinan nilai Argumen.
Nilai
DEBUG_CDS_REFRESH_EVALUATE
DEBUG_CDS_REFRESH_EXECUTE
DEBUG_CDS_REFRESH_EXECUTECOMMANDFILE
DEBUG_CDS_REFRESH_ADDBREAKPOINT
DEBUG_CDS_REFRESH_REMOVEBREAKPOINT
DEBUG_CDS_REFRESH_WRITEVIRTUAL
DEBUG_CDS_REFRESH_WRITEVIRTUALUNCACHED
DEBUG_CDS_REFRESH_WRITEPHYSICAL
DEBUG_CDS_REFRESH_WRITEPHYSICAL2
DEBUG_CDS_REFRESH_SETVALUE
DEBUG_CDS_REFRESH_SETVALUE2
DEBUG_CDS_REFRESH_SETSCOPE
DEBUG_CDS_REFRESH_SETSCOPEFRAMEBYINDEX
DEBUG_CDS_REFRESH_SETSCOPEFROMJITDEBUGINFO
DEBUG_CDS_REFRESH_SETSCOPEFROMSTOREDEVENT
DEBUG_CDS_REFRESH_INLINESTEP
DEBUG_CDS_REFRESH_INLINESTEP_PSEUDO
 

Mengembalikan nilai

Nilai yang dikembalikan diabaikan oleh mesin kecuali menunjukkan kesalahan panggilan prosedur jarak jauh; dalam hal ini klien, yang dengannya objek IDebugEventCallbacks ini terdaftar, dinonaktifkan.

Keterangan

Mesin memanggil ChangeDebuggeeState hanya jika bendera DEBUG_EVENT_CHANGE_DEBUGGEE_STATE diatur dalam masker yang dikembalikan oleh IDebugEventCallbacks::GetInterestMask.

Untuk informasi selengkapnya tentang menangani peristiwa, lihat Memantau Peristiwa. Untuk informasi tentang mengelola memori target, termasuk daftar dan ruang data, lihat Akses Memori. Untuk informasi tentang memori virtual dan fisik target, lihat Memori Virtual dan Fisik. Untuk informasi tentang memori kontrol target, port I/O, MSR, dan memori bus, lihat Ruang Data Lainnya.

Persyaratan

Persyaratan Nilai
Target Platform Desktop
Header dbgeng.h (termasuk Dbgeng.h)