using System; namespace SabreTools.Models.InstallShieldCabinet { /// public sealed class Component { /// /// Offset to the component identifier /// public uint IdentifierOffset { get; set; } /// /// Component identifier /// public string? Identifier { get; set; } /// /// Offset to the component descriptor /// public uint DescriptorOffset { get; set; } /// /// Offset to the display name /// public uint DisplayNameOffset { get; set; } /// /// Display name /// public string? DisplayName { get; set; } /// /// Reserved /// public byte[]? Reserved0 { get; set; } /// /// Reserved offset /// public uint ReservedOffset0 { get; set; } /// /// Reserved offset /// public uint ReservedOffset1 { get; set; } /// /// Component index /// public ushort ComponentIndex { get; set; } /// /// Offset to the component name /// public uint NameOffset { get; set; } /// /// Component name /// public string? Name { get; set; } /// /// Reserved offset /// public uint ReservedOffset2 { get; set; } /// /// Reserved offset /// public uint ReservedOffset3 { get; set; } /// /// Reserved offset /// public uint ReservedOffset4 { get; set; } /// /// Reserved /// public byte[]? Reserved1 { get; set; } /// /// Offset to the component CLSID /// public uint CLSIDOffset { get; set; } /// /// Component CLSID /// public Guid CLSID { get; set; } /// /// Reserved /// public byte[]? Reserved2 { get; set; } /// /// Reserved /// public byte[]? Reserved3 { get; set; } /// /// Number of depends(?) /// public ushort DependsCount { get; set; } /// /// Offset to depends(?) /// public uint DependsOffset { get; set; } /// /// Number of file groups /// public uint FileGroupCount { get; set; } /// /// Offset to the file group names /// public uint FileGroupNamesOffset { get; set; } /// /// File group names /// public string[]? FileGroupNames { get; set; } /// /// Number of X3(?) /// public ushort X3Count { get; set; } /// /// Offset to X3(?) /// public uint X3Offset { get; set; } /// /// Number of sub-components /// public ushort SubComponentsCount { get; set; } /// /// Offset to the sub-components /// public uint SubComponentsOffset { get; set; } /// /// Offset to the next component /// public uint NextComponentOffset { get; set; } /// /// Reserved offset /// public uint ReservedOffset5 { get; set; } /// /// Reserved offset /// public uint ReservedOffset6 { get; set; } /// /// Reserved offset /// public uint ReservedOffset7 { get; set; } /// /// Reserved offset /// public uint ReservedOffset8 { get; set; } } }