Ну, мой вопрос почти похож на Встраивание DLL в скомпилированный исполняемый файл , но очень хороший ответ, предоставленный здесь , теряет совместимость с моно-средой выполнения, хотя иработает на окнах.
Так, как я могу использовать Fody
(Costura
), а также поддерживать моно-совместимость.Их документы на https://github.com/Fody/Costura#contents читаются:
CosturaUtility - это класс, который дает вам возможность инициализировать систему Costura вручную в своем собственном коде.Это в основном для сценариев, где инициализатор модуля не работает, таких как библиотеки и Mono.
Чтобы использовать, вызовите CosturaUtility.Initialize () где-нибудь в вашем коде, как можно раньше.
class Program {
static Program() {
CosturaUtility.Initialize();
}
static void Main(string[] args) { ... }
}
, но даже после инициализации ConturaUtility
вручную он не поддерживает монофоническое время выполнения.
Не думаю, что журнал ошибок актуален, но вот он:
Unhandled Exception:
System.IO.FileNotFoundException: Could not load file or assembly 'CommandLine, Version=2.2.1.0, Culture=neutral, PublicKeyToken=de6f01bd326f8c32' or one of its dependencies.
File name: 'CommandLine, Version=2.2.1.0, Culture=neutral, PublicKeyToken=de6f01bd326f8c32'
[ERROR] FATAL UNHANDLED EXCEPTION: System.IO.FileNotFoundException: Could not load file or assembly 'CommandLine, Version=2.2.1.0, Culture=neutral, PublicKeyToken=de6f01bd326f8c32' or one of its dependencies.
File name: 'CommandLine, Version=2.2.1.0, Culture=neutral, PublicKeyToken=de6f01bd326f8c32'