SafeHandle.DangerousGetHandle Metoda

Definicja

Zwraca wartość handle pola.

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

Zwraca

IntPtr

nativeint

Reprezentujący IntPtr wartość handle pola. Jeśli uchwyt został oznaczony jako nieprawidłowy za pomocą SetHandleAsInvalid()metody , ta metoda nadal zwraca oryginalną wartość dojścia, która może być nieaktualną wartością.

Uwagi

Za pomocą tej metody można pobrać rzeczywistą wartość dojścia z wystąpienia klasy pochodnej SafeHandle . Ta metoda jest wymagana do zapewnienia zgodności z poprzednimi wersjami, ponieważ wiele właściwości w .NET Framework zwraca IntPtr typy dojść. IntPtr typy dojść to typy specyficzne dla platformy używane do reprezentowania wskaźnika lub uchwytu.

Przestroga

DangerousGetHandle Użycie metody może stanowić zagrożenie bezpieczeństwa, ponieważ jeśli dojście zostało oznaczone jako nieprawidłowe z wartością SetHandleAsInvalid, DangerousGetHandle nadal zwraca oryginalną, potencjalnie nieaktualną wartość dojścia. Zwrócony uchwyt można również poddać recyklingu w dowolnym momencie. W najlepszym razie oznacza to, że uchwyt może nagle przestać działać. W najgorszym przypadku, jeśli uchwyt lub zasób reprezentowany przez dojście jest narażony na niezaufany kod, może to prowadzić do ataku na ponowne użycie lub zwrócony uchwyt zabezpieczeń. Na przykład niezaufany obiekt wywołujący może wysyłać zapytania o dane dotyczące właśnie zwróconego dojścia i odbierać informacje dotyczące całkowicie niepowiązanego zasobu. Zobacz metody DangerousAddRef i , DangerousRelease aby uzyskać więcej informacji na temat bezpiecznego używania DangerousGetHandle metody.

Dotyczy