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.
İfade değerlendiricileri (EE), çalışma zamanında değişkenleri ve ifadeleri ayrıştırmak ve değerlendirmek için bir dilin söz dizimini inceleyerek, IDE kesme modundayken kullanıcı tarafından görüntülenmesini sağlar.
İfade değerlendiricilerini kullanma
İfadeler Aşağıdaki gibi ParseText yöntemi kullanılarak oluşturulur:
Hata ayıklama altyapısı (DE), IDebugExpressionContext2 arabirimini uygular.
Hata ayıklama paketi bir
IDebugExpressionContext2arabiriminden bir nesne alır ve ardındanIDebugStackFrame2::ParseTextnesnesi almak için üzerindeki yöntemini çağırır.Hata ayıklama paketi, ifadenin değerini almak için EvaluateSync yöntemini veya EvaluateAsync yöntemini çağırır.
IDebugExpression2::EvaluateAsyncKomut/Anlık penceresinden çağrılır. Diğer tüm kullanıcı arabirimi bileşenleriIDebugExpression2::EvaluateSyncçağırır.İfade değerlendirmesinin sonucu, ifade değerlendirmesi sonucunun adını, türünü ve değerini içeren bir IDebugProperty2 nesnesidir.
İfade değerlendirmesi sırasında EE, sembol sağlayıcısı bileşeninden bilgi gerektirir. Sembol sağlayıcısı, ayrıştırılan ifadeyi tanımlamak ve anlamak için kullanılan sembolik bilgileri sağlar.
Zaman uyumsuz ifade değerlendirmesi tamamlandığında, IDE'ye ifade değerlendirmesinin tamamlandığını bildirmek için oturum hata ayıklama yöneticisi (SDM) aracılığıyla DE tarafından zaman uyumsuz bir olay gönderilir. Ardından, değerlendirmenin sonucu bu
IDebugExpression2::EvaluateSyncyöntemine yapılan çağrıdan döndürülür.
Uygulama notları
Visual Studio hata ayıklama altyapıları, Ortak Dil Çalışma Zamanı (CLR) arabirimlerini kullanarak ifade değerlendiricisiyle konuşmayı bekler. Sonuç olarak, Visual Studio hata ayıklama altyapılarıyla çalışan bir ifade değerlendiricisi CLR'yi desteklemelidir (tüm CLR hata ayıklama arabirimlerinin tam listesi, Windows Yazılım Geliştirme Seti'nin (SDK) parçası olan debugref.doc bulunabilir).