Metode IDebugEventCallbacks::ChangeEngineState (dbgeng.h)

Metode panggilan balik ChangeEngineState dipanggil oleh mesin ketika statusnya telah berubah.

Sintaks

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

Parameter

[in] Flags

Menentukan set bit yang menunjukkan jenis perubahan yang terjadi dalam status mesin. Bendera bit berikut mungkin diatur:

Nilai Deskripsi
DEBUG_CES_CURRENT_THREAD Utas saat ini telah berubah, yang menyiratkan bahwa target saat ini dan proses saat ini mungkin juga telah berubah.
DEBUG_CES_EFFECTIVE_PROCESSOR Prosesor yang efektif telah berubah.
DEBUG_CES_BREAKPOINTS Satu atau beberapa titik henti telah berubah.
DEBUG_CES_CODE_LEVEL Tingkat interpretasi kode telah berubah.
DEBUG_CES_EXECUTION_STATUS Status eksekusi telah berubah.
DEBUG_CES_ENGINE_OPTIONS Opsi mesin telah berubah.
DEBUG_CES_LOG_FILE File log telah dibuka atau ditutup.
DEBUG_CES_RADIX Radiks default telah berubah.
DEBUG_CES_EVENT_FILTERS Filter peristiwa telah berubah.
DEBUG_CES_PROCESS_OPTIONS Opsi proses untuk proses saat ini telah berubah.
DEBUG_CES_EXTENSIONS DLL ekstensi telah dimuat atau dibongkar. (Untuk informasi selengkapnya, lihat Memuat DLL Ekstensi Debugger.)
DEBUG_CES_SYSTEMS Target telah ditambahkan atau dihapus.
DEBUG_CES_ASSEMBLY_OPTIONS Opsi rakit telah berubah.
DEBUG_CES_EXPRESSION_SYNTAX Sintaks ekspresi default telah berubah.
DEBUG_CES_TEXT_REPLACEMENTS Penggantian teks telah berubah.

[in] Argument

Memberikan informasi tambahan tentang perubahan pada status mesin. Jika lebih dari satu bendera bit diatur dalam parameter Bendera , parameter Argumen tidak digunakan. Jika tidak, interpretasi nilai Argumen tergantung pada nilai Bendera:

DEBUG_CES_CURRENT_THREAD

Nilai Argumen adalah ID utas mesin saat ini atau--jika tidak ada utas saat ini--DEBUG_ANY_ID. Untuk informasi selengkapnya, lihat Utas dan Proses.

DEBUG_CES_EFFECTIVE_PROCESSOR

Nilai Argumen adalah jenis prosesor yang efektif.

DEBUG_CES_BREAKPOINTS

Nilai Argumen adalah ID titik henti dari titik henti yang diubah atau--jika lebih dari satu titik henti diubah--DEBUG_ANY_ID. Untuk mengetahui informasi selengkapnya, lihat Titik Henti.

DEBUG_CES_CODE_LEVEL

Nilai Argumen adalah tingkat interpretasi kode.

DEBUG_CES_EXECUTION_STATUS

Nilai Argumen adalah status eksekusi (seperti yang dijelaskan dalam topik DEBUG_STATUS_XXX ) mungkin dikombinasikan dengan bendera bit DEBUG_STATUS_INSIDE_WAIT. DEBUG_STATUS_INSIDE_WAIT diatur saat panggilan WaitForEvent tertunda. Untuk informasi selengkapnya, lihat Sesi Debugging dan Model Eksekusi.

DEBUG_CES_ENGINE_OPTIONS

Nilai Argumen adalah opsi mesin.

DEBUG_CES_LOG_FILE

Nilai ArgumenTRUE jika file log dibuka dan FALSE jika file log ditutup.

DEBUG_CES_RADIX

Nilai Argumen adalah radix default.

DEBUG_CES_EVENT_FILTERS

Nilai Argumen adalah indeks filter peristiwa yang diubah atau--jika lebih dari satu filter peristiwa diubah--DEBUG_ANY_ID.

DEBUG_CES_PROCESS_OPTIONS

Nilai Argumen adalah opsi proses untuk proses saat ini.

DEBUG_CES_EXTENSIONS

Nilai Argumen adalah nol.

DEBUG_CES_SYSTEMS

Nilai Argumen adalah ID target target yang ditambahkan atau--jika target dihapus--DEBUG_ANY_ID.

DEBUG_CES_ASSEMBLE_OPTIONS

Nilai Argumen adalah opsi rakit.

DEBUG_CES_EXPRESSION_SYNTAX

Nilai Argumen adalah sintaks ekspresi default.

DEBUG_CES_TEXT_REPLACEMENTS

Nilai Argumen DEBUG_ANY_ID.

Nilai kembali

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

Keterangan

Metode ini hanya dipanggil oleh mesin jika bendera DEBUG_EVENT_CHANGE_ENGINE_STATE diatur dalam masker yang dikembalikan oleh IDebugEventCallbacks::GetInterestMask.

Untuk informasi selengkapnya tentang menangani peristiwa, lihat Memantau Peristiwa.

Persyaratan

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