2025-09-26 10:57:15 -04:00
|
|
|
using System.Runtime.InteropServices;
|
|
|
|
|
|
2025-09-26 13:06:18 -04:00
|
|
|
namespace SabreTools.Data.Models.InstallShieldArchiveV3
|
2025-09-26 10:57:15 -04:00
|
|
|
{
|
|
|
|
|
/// <see href="https://github.com/wfr/unshieldv3/blob/master/ISArchiveV3.h"/>
|
|
|
|
|
[StructLayout(LayoutKind.Sequential)]
|
|
|
|
|
public class Header
|
|
|
|
|
{
|
|
|
|
|
public uint Signature1;
|
|
|
|
|
|
|
|
|
|
public uint Signature2;
|
|
|
|
|
|
|
|
|
|
public ushort Reserved0;
|
|
|
|
|
|
|
|
|
|
public ushort IsMultivolume;
|
|
|
|
|
|
|
|
|
|
public ushort FileCount;
|
|
|
|
|
|
|
|
|
|
public uint DateTime;
|
|
|
|
|
|
|
|
|
|
public uint CompressedSize;
|
|
|
|
|
|
|
|
|
|
public uint UncompressedSize;
|
|
|
|
|
|
|
|
|
|
public uint Reserved1;
|
|
|
|
|
|
|
|
|
|
/// <remarks>
|
|
|
|
|
/// Set in first vol only, zero in subsequent vols
|
|
|
|
|
/// </remarks>
|
|
|
|
|
public byte VolumeTotal;
|
|
|
|
|
|
|
|
|
|
/// <remarks>
|
|
|
|
|
/// [1...n]
|
|
|
|
|
/// </remarks>
|
|
|
|
|
public byte VolumeNumber;
|
|
|
|
|
|
|
|
|
|
public byte Reserved2;
|
|
|
|
|
|
|
|
|
|
public uint SplitBeginAddress;
|
|
|
|
|
|
|
|
|
|
public uint SplitEndAddress;
|
|
|
|
|
|
|
|
|
|
public uint TocAddress;
|
|
|
|
|
|
|
|
|
|
public uint Reserved3;
|
|
|
|
|
|
|
|
|
|
public ushort DirCount;
|
|
|
|
|
|
|
|
|
|
public uint Reserved4;
|
|
|
|
|
|
|
|
|
|
public uint Reserved5;
|
|
|
|
|
}
|
2025-10-30 21:43:38 -04:00
|
|
|
}
|