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.
Hata ayıklayıcı altyapısındaki giriş ve çıkış akışlarına genel bakış için bkz. Giriş ve Çıkış.
Girdi
Bir istemcide Input yöntemi çağrılırsa altyapı tüm istemcilerinden giriş ister. Giriş, Input çağıranına döndürülür.
Giriş Geri Çağırmaları
Motor bir istemciden giriş istediğinde, bu istemciyle kaydedilen IDebugInputCallbacks nesnesini kullanır. IDebugInputCallbacks nesnesi, SetInputCallbacks kullanılarak bir istemciye kaydedilebilir. Her istemcide en fazla bir IDebugInputCallbacks nesnesi kayıtlı olabilir.
Giriş isteği, altyapının IDebugInputCallbacks::StartInput yöntemini çağırmasıyla başlar. Bu, IDebugInputCallbacks nesnesine altyapının artık giriş beklediğini bildirir.
IDebugInputCallbacks nesnesi altyapı için bazı girişlere sahipse, herhangi bir istemcinin ReturnInput yöntemini çağırabilir. ReturnInput yöntemi çağrıldıktan sonra altyapı daha fazla giriş almaz. Bu yöntemi sonraki çağıranlara girişin alınmadığı bildirilecektir.
Altyapı daha sonra IDebugInputCallbacks::EndInput'u çağırarak girişi beklemeyi durdurduğunu belirtir.
Son olarak altyapı, bit maskesi DEBUG_OUTPUT_PROMPT olarak ayarlanmış IDebugOutputCallbacks ::Output kullanarak bu girişi her istemcinin kayıtlı IDebugOutputCallbacks nesnesine (girişi sağlamak için kullanılan nesne dışında) yankılar.
Çıktı
Çıkış, çeşitli istemci yöntemleri kullanılarak altyapıya gönderilebilir; örneğin Output ve OutputVaList. Çıktıyı aldıktan sonra altyapı bunu bazı istemcilere gönderir.
İstemciler, hangi tür çıkışlarla ilgilendiklerini belirtmek için bir çıkış maskesi kullanır. Motor tarafından her çıkış üretildiğinde, çıkış türünü belirten bir maske bulunur. Çıktı türü istemcinin çıkış maskesiyle eşleşiyorsa, istemci çıkışı alır. Çıktı maskesi SetOutputMask çağrılarak ayarlanabilir ve GetOutputMask kullanılarak sorgulanabilir. Çıkış maskesi değerlerinin ayrıntıları için bkz. DEBUG_OUTPUT_XXX .
Motorun çıkış göndereceği istemcilerin listesi çıkış denetimi tarafından kontrol edilir. Genellikle çıkış denetimi tüm istemcilere çıkış gönderecek şekilde ayarlanır; ancak , ControlledOutput ve ControlledOutputVaList kullanılarak geçici olarak değiştirilebilir. Çıkış denetimi değerleri hakkındaki ayrıntılar için bkz. DEBUG_OUTCTL_XXX .
Çıkış, motor tarafından arabelleğe alınabilir. Birden fazla çıkış motoruna geçirilirse, bunları birleştirip tek bir parça halinde istemcilere gönderebilir. Bu arabelleği temizlemek için FlushCallbacks kullanın.
Her istemci nesnesinin çıkış genişliği vardır ve bu, istemci nesnesi için çıkış görüntüsünün genişliğidir. Bu genişlik yalnızca ipucu olarak kullanılır, ancak bazı komutlar ve uzantı işlevleri çıktılarını bu genişliğe göre biçimlendirır. Genişlik GetOutputWidth yöntemi tarafından döndürülür ve SetOutputWidth yöntemi kullanılarak ayarlanabilir.
Çıkış Geri Çağırmaları
Motor bir istemciye çıkış gönderdiğinde, istemciyle kaydedilen IDebugOutputCallbacks nesnesini kullanır. IDebugOutputCallbacks nesnesi, SetOutputCallbacks kullanılarak bir istemciye kaydedilebilir. Her istemcide en fazla bir IDebugInputCallbacks nesnesi kayıtlı olabilir.
Çıkışı göndermek için altyapı IDebugOutputCallbacks::Output yöntemini çağırır.
Çıkış Satırı Ön Eki
Her istemci nesnesinin, istemci nesnesiyle ilişkilendirilmiş çıkış geri çağırmasına gönderilen her çıkış satırının başına eklenen bir çıkış satırı ön eki vardır. Bu, girintileme için veya her çıkış satırına tanımlayıcı işaretler yerleştirmek için kullanılabilir.
Çıkış satırı ön eki GetOutputLinePrefix tarafından döndürülür ve SetOutputLinePrefix kullanılarak ayarlanabilir. Çıkış satırı ön ekini geçici olarak değiştirmek ve daha sonra yeniden değiştirmek için PushOutputLinePrefix ve PopOutputLinePrefix kullanın.
Günlük Dosyaları
Hata ayıklayıcı motoru, bir hata ayıklama oturumunu kaydetmek için bir günlük dosyasının açılmasını destekler. Aynı anda en fazla bir günlük dosyası açılabilir. Çıkış geri çağırmalarına gönderilen veriler, bu günlük dosyasına da gönderilir (günlüğe kaydedilmeyecek şekilde işaretlenmediği sürece).
Günlük dosyasını açmak için OpenLogFile2 (veya OpenLogFile) kullanın. GetLogFile2 (veya GetLogFile) yöntemi şu anda açık olan günlük dosyasını döndürür. Günlük dosyasını kapatmak için CloseLogFile kullanın.
SetLogMask yöntemi günlük dosyasına gönderilen çıkışı filtrelemek için kullanılabilir ve GetLogMask geçerli günlük dosyası filtresini döndürür.
Komut
Etkileşimli bir hata ayıklama oturumunda, kullanıcıya hata ayıklayıcının kullanıcı girişini beklediğini belirtmek için bir istem kullanılabilir. İstem OutputPrompt veOutputPromptVaList yöntemleri kullanılarak çıkış geri çağırmalarına gönderilir. Standart istemin içeriği GetPromptText tarafından döndürülür.