P/Invokeを使用してデバイスドライバーを操作する必要があるのはこれが初めてです。DeviceIoControl関数では、デバイスへのハンドルにSafeFileHandleを使用し、pinvoke.netは次のように述べています。
SafeFileHandleを使用する場合は、CLRによって閉じられるため、CloseHandleを呼び出さないでください。
しかし、C#クックブックで、CloseHandleのこの種の署名を見つけました。
[DllImport("kernel32.dll", SetLastError = true)]
public static extern bool CloseHandle(SafeFileHandle hObject);
真実は何ですか?