SafeHandle.IsInvalid Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
W przypadku zastąpienia w klasie pochodnej pobiera wartość wskazującą, czy wartość uchwytu jest nieprawidłowa.
public:
abstract property bool IsInvalid { bool get(); };
public abstract bool IsInvalid { get; }
member this.IsInvalid : bool
Public MustOverride ReadOnly Property IsInvalid As Boolean
Wartość właściwości
true
jeśli wartość uchwytu jest nieprawidłowa; w przeciwnym razie , false
.
Przykłady
Poniższy przykład sprawdza, czy plik został otwarty pomyślnie. Ten przykład kodu jest częścią większego przykładu podanego SafeHandle dla klasy.
// Determine if file is opened successfully.
if (_handle.IsInvalid)
throw new Win32Exception(Marshal.GetLastWin32Error(), fileName);
Uwagi
Klasy pochodne muszą zaimplementować IsInvalid właściwość, aby środowisko uruchomieniowe języka wspólnego może określić, czy jest wymagana finalizacja krytyczna. Klasy pochodne muszą zapewnić implementację zgodną z ogólnym typem obsługi obsługiwanej przez nie (0 lub -1 jest nieprawidłowa). Te klasy mogą być następnie dalej pochodne dla określonych typów bezpiecznego uchwytu.
IsClosed W przeciwieństwie do właściwości, która zgłasza, czy SafeHandle obiekt zakończył korzystanie z uchwytu bazowego, właściwość oblicza, IsInvalid czy dana wartość uchwytu jest zawsze uważana za nieprawidłową. W związku z IsInvalid tym właściwość zawsze zwraca tę samą wartość dla dowolnej wartości uchwytu.