using System.IO; using System.Reflection; using System.Runtime.Serialization.Formatters.Binary; sealed class AntiUnityBinder : System.Runtime.Serialization.SerializationBinder { public override Type BindToType(string assemblyName, string typeName) { return Type.GetType(String.Format("RSHWFile, " + Assembly.GetExecutingAssembly().FullName)); } } [System.Serializable] public class RSHWFile { public byte[]? audioData { get; set; } public int[]? signalData { get; set; } public byte[]? videoData { get; set; } } public class RSHWLoader { public static RSHWFile Load(string path) { BinaryFormatter formatter = new BinaryFormatter(); formatter.Binder = new AntiUnityBinder(); FileStream stream = File.OpenRead(path); return (RSHWFile)formatter.Deserialize(stream); } }