SafeHandle.DangerousGetHandle Yöntem

Tanım

Alanın değerini handle döndürür.

public:
 IntPtr DangerousGetHandle();
public IntPtr DangerousGetHandle();
member this.DangerousGetHandle : unit -> nativeint
Public Function DangerousGetHandle () As IntPtr

Döndürülenler

IntPtr

nativeint

IntPtr Alanın değerini handle temsil eden. Tanıtıcı ile SetHandleAsInvalid()geçersiz olarak işaretlendiyse, bu yöntem yine de eski bir değer olabilecek özgün tanıtıcı değerini döndürür.

Açıklamalar

Türetilmiş sınıfın bir örneğinden SafeHandle gerçek tanıtıcı değerini almak için bu yöntemi kullanabilirsiniz. .NET Framework'teki birçok özellik IntPtr tanıtıcı türleri döndürdiğinden geriye dönük uyumluluk için bu yöntem gereklidir. IntPtr tanıtıcı türleri, bir işaretçiyi veya tanıtıcıyı temsil etmek için kullanılan platforma özgü türlerdir.

Caution

yönteminin DangerousGetHandle kullanılması, tanıtıcı ile SetHandleAsInvalidDangerousGetHandle geçersiz olarak işaretlenmişse özgün eski tanıtıcı değerini döndürmeye devam ettiğinden güvenlik riskleri oluşturabilir. Döndürülen tanıtıcı da herhangi bir noktada geri dönüştürülebilir. En iyi durumda bu, tutamacın aniden çalışmayı durdurabileceği anlamına gelir. En kötü ihtimalle tanıtıcı veya tanıtıcının temsil ettiği kaynak güvenilmeyen koda maruz kalırsa, bu yeniden kullanılan veya döndürülen tanıtıcıda geri dönüşüm güvenliği saldırısına neden olabilir. Örneğin, güvenilmeyen bir çağıran, az önce döndürülen tanıtıcıdaki verileri sorgulayabilir ve tamamen ilgisiz bir kaynağın bilgilerini alabilir. DangerousAddRef Yöntemini güvenli bir şekilde kullanma hakkında daha fazla bilgi için ve DangerousRelease yöntemlerine DangerousGetHandle bakın.

Şunlara uygulanır