部署ClickOnce时缺少dll

当我发布ClickOnce应用程序时,其中一个项目中包含的某个引用缺失。

如果我去我的项目的属性 - >应用程序文件,这里甚至没有列出这个缺少的参考。

我的bin / Release文件夹有一个.exe.manifest文件,我注意到它也从这里丢失。

但是,当我构建项目时,该DLL实际上已复制到我的bin / Release文件夹中。

我怎样才能确保它也部署这个所需的依赖关系?


我终于找到了这个问题的解决方案,我希望它能解决你的问题。 就我而言,我正在编辑一个有多个项目的旧应用程序,但主项目和后端项目在这里是最重要的。 后端添加到主项目的参考部分。 在后端,第三方DLL被导入,但这个DLL需要2个其他的DLL。 所以这3个dll被添加到后端项目的References部分。

此时,其他2个DLL中的一个未显示在ClickOnce的“应用程序文件”部分中。 我提出了一些修复它的方法,但最优雅的方法是在主项目的参考部分中添加此dll。


如“如何:指定ClickOnce发布哪些文件”中所述,将引用上的“复制本地”属性值更改为True。

在添加引用时,对程序集(.dll文件)的引用指定如下:如果“复制本地”为False,则默认将其标记为必备程序集(先决条件(自动)),该程序集必须在应用程序之前存在于GAC中安装。 如果“复制本地”为True,程序集默认标记为应用程序程序集(包含(自动)),并且在安装时将被复制到应用程序文件夹中。 只有在其Isolated属性设置为True时,COM引用才会出现在“应用程序文件”对话框中(作为.ocx文件)。 默认情况下,它将被包括在内。

链接地址: http://www.djcxy.com/p/11305.html

上一篇: Missing dll when deploying ClickOnce

下一篇: need "like" clause