Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bir analiz uzantısı eklentisi yazdığınızda, eklentinizin çağrılmasını istediğiniz durumları açıklayan bir meta veri dosyası da yazarsınız. !analyze hata ayıklayıcısı komutu çalıştırıldığında, yüklenecek eklentileri belirlemek için meta veri dosyalarını kullanır.
Analiz uzantısı eklentinizle aynı ada ve .alz uzantısına sahip bir meta veri dosyası oluşturun. Örneğin, analiz uzantısı eklentiniz MyAnalyzer.dllolarak adlandırılırsa meta veri dosyanız MyAnalyzer.alz olarak adlandırılmalıdır. Meta veri dosyasını analiz uzantısı eklentinizle aynı dizine yerleştirin.
Analiz uzantısı eklentisi için meta veri dosyası, anahtar-değer çiftleri içeren bir ASCII metin dosyasıdır. Anahtarlar ve değerler boşlukla ayrılır. Bir anahtar, boşluk içermeyen herhangi bir karakter içerebilir. Anahtarlar büyük/küçük harfe duyarlı değildir.
Anahtardan ve ondan sonraki boşluktan sonra karşılık gelen değer başlıyor. Bir değer aşağıdaki formlardan birine sahip olabilir.
Satır sonuna kadar olan tüm karakter kümeleri. Bu form, yeni satır karakteri içermeyen değerler için çalışır.
Önemli Meta veri dosyasındaki son değer bu formda bir değere sahipse, satırın yeni satır karakteriyle bitmesi gerekir.
{ } ayraçları arasındaki herhangi bir karakter kümesi. Form, yeni satır karakterleri içeren değerler için çalışır.
# ile başlayan satır bir açıklamadır ve yoksayılır. Açıklamalar yalnızca anahtarların beklendiği yerde başlayabilir.
Meta veri dosyasında aşağıdaki anahtarları kullanabilirsiniz.
| Anahtar | Açıklama |
|---|---|
| PluginId | Dize - Eklentiyi tanımlar. |
| DebuggeeClass | Dize - Olası değerler "Çekirdek" ve "Kullanıcı"dır. Eklentinin yalnızca çekirdek modu hatalarını veya yalnızca kullanıcı modu hatalarını analiz etmekle ilgilendiğini gösterir. |
| Hata Denetim Kodu | 32 bit hata denetimi kodu - Eklentinin bu hata denetimi kodunu analiz etmekle ilgilendiğini gösterir. Tek bir meta veri dosyası birden çok hata denetimi kodu belirtebilir. |
| İstisna Kodu | 32 bit özel durum kodu - Eklentinin bu özel durum kodunu analiz etmekle ilgilendiğini gösterir. Tek bir meta veri dosyası birden çok özel durum kodu belirtebilir. |
| ExecutableName | Dize - Eklentinin yalnızca çözümlenecek işlemin çalıştırılan yürütülebilir dosyası olduğu oturumlarla ilgilendiğini gösterir. Tek bir meta veri dosyası birden çok yürütülebilir ad belirtebilir. |
| ResimAdı | Dize - Eklentinin yalnızca varsayılan çözümlemenin bu görüntüyü (dll, sys veya exe) hatalı olarak kabul ettiği oturumlarla ilgilendiğini gösterir. Analiz hangi görüntünün hatalı olduğunu belirledikten sonra eklenti çağrılır. Tek bir meta veri dosyası birden çok görüntü adı belirtebilir. |
| Maksimum Etiket Sayısı | Integer - Eklentinin ihtiyaç duyduğu en fazla özel etiket sayısıdır. Özel etiketler, extsfns.h dosyasında tanımlanan etiketler dışındaki etiketlerdir. |
Örnek Meta Veri Dosyaları
Aşağıdaki meta veri dosyası, hata denetimi kodu 0xE2 analiz etmek isteyen bir eklentiyi açıklar. Son satırın yeni satır karakteriyle bitmesi gerektiğini unutmayın.
PluginId MyPlugin
DebuggeeClass Kernel
BugCheckCode 0xE2
Aşağıdaki meta veri dosyası, MyDriver.sys hata modülü olarak kabul edilirse, hata denetimleri 0x8, 0x9 ve 0xA'yı analiz etmekle ilgilenen bir eklentiyi açıklar.
PluginId MyPlugin
DebuggeeClass Kernel
BugCheckCode 0x8
BugCheckCode 0x9
BugCheckCode 0xA
ImageName MyDriver.sys
Aşağıdaki meta veri dosyasında, analiz edilen işlemin çalıştırılan yürütülebilir dosyası MyApp.exe olup olmadığını 0xC0000005 özel durum kodunu analiz etmek isteyen bir eklenti açıklanır. Ayrıca, eklenti en fazla üç özel etiket oluşturabilir.
PluginId MyPlugin
DebuggeeClass User
ExceptionCode 0xC0000005
ExecutableName MyApp.exe
Windows için Hata Ayıklama Araçları, dbgexts.dlladlı bir hata ayıklayıcı uzantısı modülü oluşturmak için kullanabileceğiniz bir örneğe sahiptir. Bu uzantı modülü birkaç hata ayıklayıcı uzantısı komutu uygular, ancak bir analiz uzantısı eklentisi olarak da kullanılabilir; yani bir _EFN_Analyze işlevini dışarı aktarır. dbgexts.dll bir analiz uzantısı eklentisi olarak tanımlayan bir meta veri dosyası aşağıdadır.
PluginId PluginSample
DebuggeeClass User
ExceptionCode 0xc0000005
ExecutableName cdb.exe
ExecutableName windbg.exe
#
# Custom tag descriptions
#
TagDesc 0xA0000000 SAMPLE_PLUGIN_DEBUG_TEXT {Sample debug help text from plug-in analysis}
#
Ayrıca bakınız
!analyze Komutunu Genişletmek İçin Bir Çözümleme Uzantısı Eklentisi Geliştirme