Visual studio 2008 Visual Studio 2008安装项目安装错误:“0”;无法加载文件或程序集“;

Visual studio 2008 Visual Studio 2008安装项目安装错误:“0”;无法加载文件或程序集“;,visual-studio-2008,dll,installation,gac,setup-project,Visual Studio 2008,Dll,Installation,Gac,Setup Project,我有一个问题,显然很多人也有过,只有对别人有用的东西对我还没有用。以下是设置: VS2008解决方案,包括5个项目,全部针对.NET 2.0: DLL A,无项目引用 DLL B,引用DLL A Windows窗体应用程序,参考DLL B Windows服务,引用DLL B 设置项目 我希望将DLL A和DLL B安装到GAC,但安装时出现错误: 错误1001。无法加载文件或程序集“DLL_B”、版本1.0.0.1、区域性=中性、PublicKeyToken=5e297270603814f4”或

我有一个问题,显然很多人也有过,只有对别人有用的东西对我还没有用。以下是设置:

VS2008解决方案,包括5个项目,全部针对.NET 2.0:

  • DLL A,无项目引用
  • DLL B,引用DLL A
  • Windows窗体应用程序,参考DLL B
  • Windows服务,引用DLL B
  • 设置项目
  • 我希望将DLL A和DLL B安装到GAC,但安装时出现错误:

    错误1001。无法加载文件或程序集“DLL_B”、版本1.0.0.1、区域性=中性、PublicKeyToken=5e297270603814f4”或其依赖项之一。系统找不到指定的文件

    根据我所阅读的和其他一些网站,我没有按照特定顺序做过以下工作:

    • 重新引用我项目中的所有内容
    • 将已编译的EXE手动添加到安装项目中(而不是使用“主输出”…DLL A和DLL B显示为“检测到的依赖项”)
    • 在安装项目->启动条件->将.NET Framework设置为2.0
    • 在安装项目->文件系统->中,请求将检测到的依赖项安装到全局程序集缓存文件夹
    所以,我可能遗漏了什么。有人能帮我弄清楚那是什么吗


    提前感谢。

    听起来您正在使用InstallUtil自定义操作来安装和启动windows服务,并且此windows服务具有GAC中的依赖项。Winodows安装程序的一个已知限制是,WinSXS和GAC的文件在启动自定义操作后的提交阶段(延迟阶段)才安装


    首先,您应该知道InstallUtil自定义操作非常脆弱,有更好的方法可以做到这一点。其次,除了a)将服务设置为自动并重新启动或b)不将程序集安装到GAC之外,您将永远无法绕过我上面描述的问题。

    听起来您正在使用InstallUtil自定义操作来安装和启动windows服务,并且此windows服务具有位于广汽。Winodows安装程序的一个已知限制是,WinSXS和GAC的文件在启动自定义操作后的提交阶段(延迟阶段)才安装


    首先,您应该知道InstallUtil自定义操作非常脆弱,有更好的方法可以做到这一点。其次,除了a)将服务设置为自动并重新启动或b)不将程序集安装到GAC之外,您将永远无法绕过我上面描述的问题。

    此外,在解决方案资源管理器->安装项目->检测到的依赖项->DLL a和DLL b->源路径中,说明项目输出目录(bin\Release)错误消息显示的文件名为空。那不好。我用的是<>标签,这就是原因。已编辑。此外,在解决方案资源管理器->安装项目->检测到的依赖项->DLL A和DLL B->源路径中,说明项目输出目录(bin\Release),错误消息显示的文件名为空。那不好。我用的是<>标签,这就是原因。编辑。你能给我指出一些更好的方法来完成我想做的事情的正确方向吗?很好!绝对是这样!我在Google Groups上发现了一篇很好的帖子,我应用了这段代码,它很快就实现了:你能给我指出一些更好的方法来完成我想做的事情吗?很好!绝对是这样!我在Google Groups上找到了一篇很好的帖子,我应用了这段代码,它是开箱即用的: