2024-04-23 13:30:43 -04:00
|
|
|
using System.Runtime.InteropServices;
|
|
|
|
|
|
2023-11-15 14:30:25 -05:00
|
|
|
namespace SabreTools.Models.InstallShieldArchiveV3
|
|
|
|
|
{
|
|
|
|
|
/// <see href="https://github.com/wfr/unshieldv3/blob/master/ISArchiveV3.h"/>
|
2024-04-23 13:30:43 -04:00
|
|
|
[StructLayout(LayoutKind.Sequential)]
|
2023-11-15 14:30:25 -05:00
|
|
|
public class File
|
|
|
|
|
{
|
2024-04-23 13:30:43 -04:00
|
|
|
public byte VolumeEnd;
|
2023-11-15 14:30:25 -05:00
|
|
|
|
2024-04-23 13:30:43 -04:00
|
|
|
public ushort Index;
|
2023-11-15 14:30:25 -05:00
|
|
|
|
2024-04-23 13:30:43 -04:00
|
|
|
public uint UncompressedSize;
|
2023-11-15 14:30:25 -05:00
|
|
|
|
2024-04-23 13:30:43 -04:00
|
|
|
public uint CompressedSize;
|
2023-11-15 14:30:25 -05:00
|
|
|
|
2024-04-23 13:30:43 -04:00
|
|
|
public uint Offset;
|
2023-11-15 14:30:25 -05:00
|
|
|
|
2024-04-23 13:30:43 -04:00
|
|
|
public uint DateTime;
|
2023-11-15 14:30:25 -05:00
|
|
|
|
2024-04-23 13:30:43 -04:00
|
|
|
public uint Reserved0;
|
2023-11-15 14:30:25 -05:00
|
|
|
|
2024-04-23 13:30:43 -04:00
|
|
|
public ushort ChunkSize;
|
2023-11-15 14:30:25 -05:00
|
|
|
|
2024-04-23 13:30:43 -04:00
|
|
|
[MarshalAs(UnmanagedType.U1)]
|
|
|
|
|
public Attributes Attrib;
|
2023-11-15 14:30:25 -05:00
|
|
|
|
2024-04-23 13:30:43 -04:00
|
|
|
public byte IsSplit;
|
2023-11-15 14:30:25 -05:00
|
|
|
|
2024-04-23 13:30:43 -04:00
|
|
|
public byte Reserved1;
|
2023-11-15 14:30:25 -05:00
|
|
|
|
2024-04-23 13:30:43 -04:00
|
|
|
public byte VolumeStart;
|
2023-11-15 14:30:25 -05:00
|
|
|
|
2024-04-23 13:30:43 -04:00
|
|
|
[MarshalAs(UnmanagedType.AnsiBStr)]
|
|
|
|
|
public string? Name;
|
2023-11-15 14:30:25 -05:00
|
|
|
}
|
|
|
|
|
}
|