invalidGCHandleCookie MDA
Not
Bu makale .NET Framework'e özgüdür. .NET 6 ve sonraki sürümleri de dahil olmak üzere daha yeni .NET uygulamaları için geçerli değildir.
Geçersiz invalidGCHandleCookie
bir tanımlama bilgisinden IntPtr bir tanımlama bilgisine GCHandle dönüştürme denendiğinde yönetilen hata ayıklama yardımcısı (MDA) etkinleştirilir.
Belirtiler
'yi kullanmaya veya bir 'den IntPtralmaya GCHandle çalışırken erişim ihlalleri ve bellek bozulması gibi tanımsız davranışlar.
Neden
Tanımlama bilgisi büyük olasılıkla geçersizdir çünkü ilk olarak bir GCHandle'den oluşturulmamıştır, zaten serbest bırakılmış olan bir'i GCHandle temsil eder, farklı bir uygulama etki alanındaki bir GCHandle tanımlama bilgisidir veya yerel kod olarak GCHandle yerel koda göre sıralanmıştır, ancak clr'ye IntPtrbir atama denenmiştir.
Çözüm
için GCHandlegeçerli IntPtr bir tanımlama bilgisi belirtin.
Çalışma Zamanı üzerindeki etkisi
Bu MDA etkinleştirildiğinde, geri geçirilen tanımlama bilgisi değerleri MDA etkinleştirilmediğinde döndürülen değerlerden farklı olduğundan hata ayıklayıcı artık kökleri nesnelerine kadar izleyemez.
Çıktı
Geçersiz IntPtr tanımlama bilgisi değeri bildirilir.
Yapılandırma
<mdaConfig>
<assistants>
<invalidGCHandleCookie />
</assistants>
</mdaConfig>