public void GetStandardInfoByHandleBasic() { string tempPath = FileMethods.GetTempPath(); string tempFileName = System.IO.Path.Combine(tempPath, System.IO.Path.GetRandomFileName()); try { using (var directory = FileMethods.CreateFile(tempPath, DesiredAccess.GENERIC_READWRITE, ShareMode.FILE_SHARE_READWRITE, CreationDisposition.OPEN_EXISTING, FileAttributes.NONE, FileFlags.FILE_FLAG_BACKUP_SEMANTICS)) { var info = FileMethods.GetFileStandardInfoByHandle(directory); info.Directory.Should().BeTrue(); } using (var file = FileMethods.CreateFile(tempFileName, DesiredAccess.GENERIC_READWRITE, ShareMode.FILE_SHARE_READWRITE, CreationDisposition.CREATE_NEW)) { var info = FileMethods.GetFileStandardInfoByHandle(file); info.Directory.Should().BeFalse(); info.NumberOfLinks.Should().Be(1); info.DeletePending.Should().BeFalse(); info.AllocationSize.Should().Be(0); info.EndOfFile.Should().Be(0); } } finally { FileMethods.DeleteFile(tempFileName); } }