好吧,我的问题几乎类似于在已编译的可执行文件中嵌入 DLL,但这里提供的非常好的答案失去了与单声道运行时的兼容性,尽管它适用于 Windows。
那么我如何使用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'