我有一个类库dll
,其中嵌入了一个文件作为Resources.resx
中引用的资源。
internal class Resources {
internal static byte[] LicenseFile {
get {
object obj = ResourceManager.GetObject("LicenseFile", resourceCulture);
return ((byte[])(obj));
}
}
}
此库由多个应用程序引用,例如Windows服务。
这在本地Windows 7计算机或旧版Windows Server 2008上没有问题。
但是该服务无法在Windows Server 2012中启动,因为它找不到该文件。
系统事件日志显示时抛出 System.IO.FileNotFoundException
。
更新
我打印出了栈跟踪,似乎无法找到所需的dll。它根本不是资源文件。
无法加载文件或程序集“LeadTools.dll”或其中一个依赖项。找不到模块。
Dateiname: 'Leadtools.dll'
at MyClassLibrary.Utils.InitLeadTools()
at MyService.Logic.Program.Main(String[] args)
答案 0 :(得分:1)
.NET 4.0的LEADTOOLS二进制文件需要重新分发Microsoft Visual C ++ 2010运行时文件。