Bagikan melalui


Objek Klien dan Mesin

Ekstensi EngExtCpp berinteraksi dengan mesin debugger melalui objek klien. Penunjuk antarmuka ke objek klien tersedia untuk ekstensi melalui anggota kelas dasar ExtExtension . Anggota berikut menyediakan akses ke versi pertama antarmuka API mesin.

Antarmuka Mesin API Anggota ExtExtension

IDebugAdvanced

m_Advanced

IDebugClient

m_Client

IDebugControl

m_Control

IDebugDataSpaces

m_Data

IDebugRegisters

m_Registers

IDebugSymbols

m_Symbols

IDebugSystemObjects

m_System

Anggota berikut menyediakan akses ke versi antarmuka API mesin yang lebih baru. Antarmuka ini mungkin tidak tersedia di semua versi mesin debugger. Jika tidak tersedia, upaya apa pun untuk menggunakannya akan mengakibatkan pengecualian dilemparkan.

Antarmuka API Mesin Anggota ExtExtension

IDebugAdvanced2

m_Advanced2

IDebugAdvanced3

m_Advanced3

IDebugClient2

m_Client2

IDebugClient3

m_Client3

IDebugClient4

m_Client4

IDebugClient5

m_Client5

IDebugControl2

m_Control2

IDebugControl3

m_Control3

IDebugControl4

m_Control4

IDebugData2

m_Data2

IDebugData3

m_Data3

IDebugData4

m_Data4

IDebugRegisters2

m_Registers2

IDebugSymbols2

m_Symbols2

IDebugSymbols3

m_Symbols3

IDebugSystemObjects2

m_System2

IDebugSystemObjects3

m_System3

IDebugSystemObjects4

m_System4

Anggota dalam tabel ini diinisialisasi setiap kali pustaka ekstensi digunakan untuk menjalankan perintah ekstensi atau memformat struktur untuk output. Setelah tugas selesai, anggota ini di-nonaktifkan. Akibatnya, ekstensi tidak boleh menyimpan nilai anggota ini dan harus menggunakan anggota ExtExtension secara langsung.

Pustaka ekstensi juga dapat membuat objek kliennya sendiri menggunakan metode IDebugClient::CreateClient atau fungsi DebugCreate atau DebugConnect.

Untuk gambaran umum objek klien, lihat Objek Klien.