Episode
Defrag Tools #105 - Menulis Ekstensi Debugger Bagian 9
Dalam episode Defrag Tools ini, Andrew Richards dan Chad Beeder menyelesaikan serangkaian penulisan Ekstensi Debugger untuk Alat Debugging untuk Windows. Seri ini didasarkan pada seri 3 bagian MSDN Magazine yang ditulis kembali oleh Andrew pada awal 2011.
Sumber Daya:
Menulis Alat Debugging untuk Ekstensi Windows - Bagian 1 - Maret 2011
Menulis Alat Debugging untuk Ekstensi Windows - Bagian 2 - Mei 2011
Menulis Alat Debugging untuk Ekstensi Windows - Bagian 3 - Juni 2011
Timeline:
[00:00] - Debugger Markup Language (DML)
[01:10] - Contoh output DML - !pde.dpx & lmD
[03:19] - IDebugControl::ControlledOutput
[03:45] - DEBUG_OUTCTL_XXX
[04:57] - Output teks - DEBUG_OUTCTL_AMBIENT_TEXT
[05:29] - Output DML - DEBUG_OUTCTL_AMBIENT_DML
[06:20] - Masalah output - Markup yang tidak cocok
[09:35] - Masalah output - Urutan escape HTML; misalnya < untuk <, " untuk ", dll.
[10:35] - Masalah output - %s vs %Y{t} (dan %ma)
[14:42] - Tebal (teks), Miring (teks) dan Garis Bawah (teks)
[15:21] - Hyperlink - Tidak Dicatat (teks) - direkomendasikan
[15:21] - Hyperlink - Dicatat (teks)
[18:15] - Kemampuan DML (WinDBG vs. CDB)
[18:29] - IDebugAdvanced2::Request - DEBUG_REQUEST_CURRENT_OUTPUT_CALLBACKS_ARE_DML_AWARE
[19:40] - Preferensi DML (.prefer_dml)
[20:42] - IDebugControl::GetEngineOptions - DEBUG_ENGOPT_PREFER_DML
[20:42] - Warna Latar Depan (teks)
[20:42] - Warna Latar Belakang (teks)
[20:42] - Tidak ada pilihan warna eksplisit; harus menggunakan Kata Kunci - lihat dml.doc di folder debugger
[22:48] - Warna Kata Kunci yang ditentukan dalam Tampilan | Pilihan
[24:35] - Sarankan Anda menggunakan kata kunci terkait Sumber (src*) karena kata kunci tersebut tidak mungkin disesuaikan
[26:48] - Kode Sumber (MyExt7.zip) ada di OneDrive
[26:48] - Kirim email kepada kami masalah Anda di defragtools@microsoft.com
BOOL PreferDML(IDebugClient* pDebugClient) { BOOL bPreferDML = FALSE; IDebugControl* pDebugControl; if (SUCCEEDED(pDebugClient-QueryInterface>(__uuidof(IDebugControl), (void **)&pDebugControl))) { ULONG ulOptions = 0; if (SUCCEEDED(pDebugControl-GetEngineOptions>(&ulOptions))) { bPreferDML = (ulOptions &DEBUG_ENGOPT_PREFER_DML); } pDebugControl-Release>(); } mengembalikan bPreferDML; }
BOOL AbilityDML(IDebugClient* pDebugClient) { BOOL bAbilityDML = FALSE; IDebugAdvanced2* pDebugAdvanced2; if (SUCCEEDED(pDebugClient-QueryInterface>(__uuidof(IDebugAdvanced2), (void **)&pDebugAdvanced2))) { HRESULT hr = 0; if (SUCCEEDED(hr = pDebugAdvanced2-Request>(DEBUG_REQUEST_CURRENT_OUTPUT_CALLBACKS_ARE_DML_AWARE, NULL, 0, NULL, 0, NULL))) { if (hr == S_OK) { bAbilityDML = TRUE; } } pDebugAdvanced2-Release>(); } return bAbilityDML; }
Dalam episode Defrag Tools ini, Andrew Richards dan Chad Beeder menyelesaikan serangkaian penulisan Ekstensi Debugger untuk Alat Debugging untuk Windows. Seri ini didasarkan pada seri 3 bagian MSDN Magazine yang ditulis kembali oleh Andrew pada awal 2011.
Sumber Daya:
Menulis Alat Debugging untuk Ekstensi Windows - Bagian 1 - Maret 2011
Menulis Alat Debugging untuk Ekstensi Windows - Bagian 2 - Mei 2011
Menulis Alat Debugging untuk Ekstensi Windows - Bagian 3 - Juni 2011
Timeline:
[00:00] - Debugger Markup Language (DML)
[01:10] - Contoh output DML - !pde.dpx & lmD
[03:19] - IDebugControl::ControlledOutput
[03:45] - DEBUG_OUTCTL_XXX
[04:57] - Output teks - DEBUG_OUTCTL_AMBIENT_TEXT
[05:29] - Output DML - DEBUG_OUTCTL_AMBIENT_DML
[06:20] - Masalah output - Markup yang tidak cocok
[09:35] - Masalah output - Urutan escape HTML; misalnya < untuk <, " untuk ", dll.
[10:35] - Masalah output - %s vs %Y{t} (dan %ma)
[14:42] - Tebal (teks), Miring (teks) dan Garis Bawah (teks)
[15:21] - Hyperlink - Tidak Dicatat (teks) - direkomendasikan
[15:21] - Hyperlink - Dicatat (teks)
[18:15] - Kemampuan DML (WinDBG vs. CDB)
[18:29] - IDebugAdvanced2::Request - DEBUG_REQUEST_CURRENT_OUTPUT_CALLBACKS_ARE_DML_AWARE
[19:40] - Preferensi DML (.prefer_dml)
[20:42] - IDebugControl::GetEngineOptions - DEBUG_ENGOPT_PREFER_DML
[20:42] - Warna Latar Depan (teks)
[20:42] - Warna Latar Belakang (teks)
[20:42] - Tidak ada pilihan warna eksplisit; harus menggunakan Kata Kunci - lihat dml.doc di folder debugger
[22:48] - Warna Kata Kunci yang ditentukan dalam Tampilan | Pilihan
[24:35] - Sarankan Anda menggunakan kata kunci terkait Sumber (src*) karena kata kunci tersebut tidak mungkin disesuaikan
[26:48] - Kode Sumber (MyExt7.zip) ada di OneDrive
[26:48] - Kirim email kepada kami masalah Anda di defragtools@microsoft.com
BOOL PreferDML(IDebugClient* pDebugClient) { BOOL bPreferDML = FALSE; IDebugControl* pDebugControl; if (SUCCEEDED(pDebugClient-QueryInterface>(__uuidof(IDebugControl), (void **)&pDebugControl))) { ULONG ulOptions = 0; if (SUCCEEDED(pDebugControl-GetEngineOptions>(&ulOptions))) { bPreferDML = (ulOptions &DEBUG_ENGOPT_PREFER_DML); } pDebugControl-Release>(); } mengembalikan bPreferDML; }
BOOL AbilityDML(IDebugClient* pDebugClient) { BOOL bAbilityDML = FALSE; IDebugAdvanced2* pDebugAdvanced2; if (SUCCEEDED(pDebugClient-QueryInterface>(__uuidof(IDebugAdvanced2), (void **)&pDebugAdvanced2))) { HRESULT hr = 0; if (SUCCEEDED(hr = pDebugAdvanced2-Request>(DEBUG_REQUEST_CURRENT_OUTPUT_CALLBACKS_ARE_DML_AWARE, NULL, 0, NULL, 0, NULL))) { if (hr == S_OK) { bAbilityDML = TRUE; } } pDebugAdvanced2-Release>(); } return bAbilityDML; }
Memiliki umpan balik? Kirimkan masalah di sini.