public void EraseHardware(string path) { SafeFileHandle asyncWriteHandle = CreateFile(path, Win32HardwareIOSupport.GENERIC_WRITE, Win32HardwareIOSupport.FILE_SHARE_WRITE | Win32HardwareIOSupport.FILE_SHARE_READ, IntPtr.Zero, Win32HardwareIOSupport.OPEN_EXISTING, 0, IntPtr.Zero); if (asyncWriteHandle.IsInvalid) { Marshal.ThrowExceptionForHR(Marshal.GetHRForLastWin32Error()); } uint wrBytes; if (!WriteFile(asyncWriteHandle, EraseDeviceReq.getCommandPacket(), 65, out wrBytes, IntPtr.Zero)) { Marshal.ThrowExceptionForHR(Marshal.GetHRForLastWin32Error()); } asyncWriteHandle.Close(); }
public void EraseHardware(FileStream hardwareFileStream) { hardwareFileStream.Write(EraseDeviceReq.getCommandPacket(), 0, 65); }