public void Read(BinaryReader reader)
 {
     this.signature      = reader.ReadUInt32();
     this.structVersion  = reader.ReadUInt32();
     this.fileVersion    = UInt64ToVersion(reader.ReadUInt64());
     this.productVersion = UInt64ToVersion(reader.ReadUInt64());
     this.fileFlagsMask  = (VersionBuildTypes)reader.ReadInt32();
     this.fileFlags      = (VersionBuildTypes)reader.ReadInt32();
     this.fileOS         = (VersionFileOS)reader.ReadInt32();
     this.fileType       = (VersionFileType)reader.ReadInt32();
     this.fileSubtype    = (VersionFileSubtype)reader.ReadInt32();
     this.timestamp      = UInt64ToDateTime(reader.ReadUInt64());
 }
 public void Read(BinaryReader reader)
 {
     this.signature = reader.ReadUInt32();
     this.structVersion = reader.ReadUInt32();
     this.fileVersion = UInt64ToVersion(reader.ReadUInt64());
     this.productVersion = UInt64ToVersion(reader.ReadUInt64());
     this.fileFlagsMask = (VersionBuildTypes) reader.ReadInt32();
     this.fileFlags = (VersionBuildTypes) reader.ReadInt32();
     this.fileOS = (VersionFileOS) reader.ReadInt32();
     this.fileType = (VersionFileType) reader.ReadInt32();
     this.fileSubtype = (VersionFileSubtype) reader.ReadInt32();
     this.timestamp = UInt64ToDateTime(reader.ReadUInt64());
 }