我创建了使用my.dll的Net 4.5 Windows服务。 My.dll是使用CLR支持编译的。我使用Visual Studio 2013中的Project Setup项目创建了msi文件。我为my.dll文件设置了vsdraCOM
选项,以提供库的自动注册。
当我使用sc
命令在开发机器(使用Visual Studio 2013)下安装和启动服务时,服务启动良好。但后来我使用msi文件在“clear”机器下安装,然后尝试启动我收到错误:System.IO.FileNotFoundException: Could not load file or assembly my.dll
我尝试使用regsvr32 my.dll手动注册dll,但收到错误:无法加载模块“\ mydll”。无法找到路径.`(错误消息是从我的母语翻译而来)。
我还使用ProcMon来分析问题所在,但没有看到任何错误。
我试图将dll文件放入System32目录,但它没有解决问题。
答案 0 :(得分:0)
我安装了可再发行软件包并在System32目录中添加了以下dll:msvcp120d.dll,msvcr120d.dll,vccorlib120d.dll来自c:\ Program Files(x86)\ Microsoft Visual Studio 12.0 \ VC \ redist \ Debug_NonRedist \ x64 \ Microsoft.VC120.DebugCRT \
问题解决了