сериализатор от Unity 5.6 (System.Runtime.Serialization.Formatters.Binary.BinaryFormatter.Serialize()), т.к. в новух версиях он изменился, и поломались старые сохранения.
Положил соответствующую либу (C:\Program Files\Unity\Editor\Data\Mono\lib\mono\2.0\mscorlib.dll) в проект, подставил ссылку
https://i.imgur.com/2qVuFrf.png
Из ИДЕ дёргает правильную ДЛЛку, однако если собрать библиотеку с этим сериалайзером, то в рантайме он лезет к той, что указана текущей версией Юнити, например C:\Program Files\Unity\Hub\Editor\2017.4.32f1\Editor\Data\MonoBleedingEdge\lib\mono\4.5\mscorlib.dll.
Попробовал использовать Costura от Fody, но эффекта от него нет. Ни косвенного (размер скомпилированного файлика так и остался в пределах нескольких КБ), ни явного - по-прежнему в рантайме дёргаются системные библиотеки. При этом, на других ДЛЛках она работает нормально.
Собственно, вопрос. Каким образом вшить в мою библиотечку конкретный mscorlib и заставить именно его использовать в рантайме?
Спасибо)
Используй сторонние либы. Это же сериализатор - легко можно заменить на условный msgpack или flatbuffers
А всё. Перечитал
Ну и ещё вопрос. Как себя проявляет проблема с сериализацией?
Обсуждают сегодня