Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Selama mode jeda, IDE harus mengevaluasi ekspresi sederhana yang melibatkan beberapa variabel program. Untuk mencapai evaluasinya, mesin debug (DE) harus mengurai dan mengevaluasi ekspresi yang dimasukkan ke dalam salah satu jendela IDE.
Ekspresi dibuat dengan metode IDebugExpressionContext2::P arseText dan diwakili oleh antarmuka IDebugExpression2 yang dihasilkan.
Antarmuka IDebugExpression2 diimplementasikan oleh DE dan memanggil metode EvalAsync-nya untuk mengembalikan antarmuka IDebugProperty2 ke IDE, untuk menampilkan hasil evaluasi ekspresi di IDE. IDebugProperty2::GetPropertyInfo mengembalikan struktur yang digunakan untuk menempatkan nilai ekspresi ke dalam jendela Watch atau ke jendela Lokal .
Paket debug atau manajer debug sesi (SDM) memanggil IDebugExpression2::EvaluateAsync atau EvaluateSync untuk mendapatkan antarmuka IDebugProperty2 yang mewakili hasil evaluasi.
IDebugProperty2 memiliki metode yang mengembalikan nama, jenis, dan nilai ekspresi. Informasi ini muncul di berbagai jendela debugger.
Menggunakan evaluasi ekspresi
Untuk menggunakan evaluasi ekspresi, Anda harus menerapkan metode IDebugExpressionContext2::P arseText dan semua metode antarmuka IDebugExpression2 , seperti yang ditunjukkan dalam tabel berikut.
| Metode | Description |
|---|---|
| EvaluateAsync | Mengevaluasi ekspresi secara asinkron. |
| Batalkan | Mengakhiri evaluasi ekspresi asinkron. |
| EvaluateSync | Mengevaluasi ekspresi secara sinkron. |
Evaluasi sinkron dan asinkron memerlukan penerapan metode IDebugProperty2::GetPropertyInfo . Evaluasi ekspresi asinkron memerlukan implementasi IDebugExpressionEvaluationCompleteEvent2.