public VariantMap ReadVariantMap() { ResInfoHandle rh = ResourceUnsafeNativeMethods.FindResourceEx( neutralModule, "VMAP", "VMAP", 0); if (rh.IsInvalid) { throw new InvalidOperationException("VMAP resource not found."); } var stream = neutralModule.LoadResourceStream(rh); using (var reader = new BinaryReader(stream)) { var vmap = new VariantMap(); vmap.Name = reader.ReadAlignedPascalZString(4); vmap.Size = reader.ReadAlignedPascalZString(4); vmap.Color = reader.ReadAlignedPascalZString(4); if (reader.BaseStream.Position != reader.BaseStream.Length) { throw new Exception("Trailing unread data in VMAP."); } return(vmap); } }
public Stream OpenStream() { return(module.LoadResourceStream(resource)); }