Files

173 lines
4.3 KiB
C#
Raw Permalink Normal View History

2023-09-04 00:11:04 -04:00
using System;
2023-09-04 00:12:49 -04:00
namespace SabreTools.Models.InstallShieldCabinet
2023-09-04 00:11:04 -04:00
{
/// <see href="https://github.com/twogood/unshield/blob/main/lib/libunshield.h"/>
public sealed class Component
{
/// <summary>
/// Offset to the component identifier
/// </summary>
2023-09-10 21:24:10 -04:00
public uint IdentifierOffset { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Component identifier
/// </summary>
2023-09-10 21:24:10 -04:00
public string? Identifier { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Offset to the component descriptor
/// </summary>
2023-09-10 21:24:10 -04:00
public uint DescriptorOffset { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Offset to the display name
/// </summary>
2023-09-10 21:24:10 -04:00
public uint DisplayNameOffset { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Display name
/// </summary>
2023-09-10 21:24:10 -04:00
public string? DisplayName { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Reserved
/// </summary>
2023-09-10 21:24:10 -04:00
public byte[]? Reserved0 { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Reserved offset
/// </summary>
2023-09-10 21:24:10 -04:00
public uint ReservedOffset0 { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Reserved offset
/// </summary>
2023-09-10 21:24:10 -04:00
public uint ReservedOffset1 { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Component index
/// </summary>
2023-09-10 21:24:10 -04:00
public ushort ComponentIndex { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Offset to the component name
/// </summary>
2023-09-10 21:24:10 -04:00
public uint NameOffset { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Component name
/// </summary>
2023-09-10 21:24:10 -04:00
public string? Name { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Reserved offset
/// </summary>
2023-09-10 21:24:10 -04:00
public uint ReservedOffset2 { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Reserved offset
/// </summary>
2023-09-10 21:24:10 -04:00
public uint ReservedOffset3 { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Reserved offset
/// </summary>
2023-09-10 21:24:10 -04:00
public uint ReservedOffset4 { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Reserved
/// </summary>
2023-09-10 21:24:10 -04:00
public byte[]? Reserved1 { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Offset to the component CLSID
/// </summary>
2023-09-10 21:24:10 -04:00
public uint CLSIDOffset { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Component CLSID
/// </summary>
2023-09-10 21:24:10 -04:00
public Guid CLSID { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Reserved
/// </summary>
2023-09-10 21:24:10 -04:00
public byte[]? Reserved2 { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Reserved
/// </summary>
2023-09-10 21:24:10 -04:00
public byte[]? Reserved3 { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Number of depends(?)
/// </summary>
2023-09-10 21:24:10 -04:00
public ushort DependsCount { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Offset to depends(?)
/// </summary>
2023-09-10 21:24:10 -04:00
public uint DependsOffset { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Number of file groups
/// </summary>
2023-09-10 21:24:10 -04:00
public uint FileGroupCount { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Offset to the file group names
/// </summary>
2023-09-10 21:24:10 -04:00
public uint FileGroupNamesOffset { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// File group names
/// </summary>
2023-09-10 21:24:10 -04:00
public string[]? FileGroupNames { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Number of X3(?)
/// </summary>
2023-09-10 21:24:10 -04:00
public ushort X3Count { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Offset to X3(?)
/// </summary>
2023-09-10 21:24:10 -04:00
public uint X3Offset { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Number of sub-components
/// </summary>
2023-09-10 21:24:10 -04:00
public ushort SubComponentsCount { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Offset to the sub-components
/// </summary>
2023-09-10 21:24:10 -04:00
public uint SubComponentsOffset { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Offset to the next component
/// </summary>
2023-09-10 21:24:10 -04:00
public uint NextComponentOffset { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Reserved offset
/// </summary>
2023-09-10 21:24:10 -04:00
public uint ReservedOffset5 { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Reserved offset
/// </summary>
2023-09-10 21:24:10 -04:00
public uint ReservedOffset6 { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Reserved offset
/// </summary>
2023-09-10 21:24:10 -04:00
public uint ReservedOffset7 { get; set; }
2023-09-04 00:11:04 -04:00
/// <summary>
/// Reserved offset
/// </summary>
2023-09-10 21:24:10 -04:00
public uint ReservedOffset8 { get; set; }
2023-09-04 00:11:04 -04:00
}
}