我对Visual Studio Express 2010 c#版有一个问题。我有一个引用DLL的项目。此DLL具有标记为生成操作=内容复制到输出目录=始终复制的外部Excel文件
在生成解决方案时,此Excel文件被正确复制到BIN\release解决方案文件夹中。
但是,如果我尝试使用发布向导部署相同的解决方案,则Excel文件不会复制到安装目录中。
有谁能帮帮我吗?
发布于 2011-10-18 14:13:43
您是说Excel文件仅由项目中包含的dll引用?这是一个辅助引用,ClickOnce将看不到它并自动包含该文件。
首先,在你的dll上,我假设它被你的项目直接引用。如果是,请确保已将其添加到项目中,并将Build Action设置为"none“,将"copy to output directory”设置为"do not copy“。然后删除对它的引用,然后重新添加它,将它指向现在包含在项目中的版本。将"copy local“属性设置为"true”。这将确保dll本身得到正确部署。
对于Excel文件,您必须将其添加到项目中。将构建操作设置为"content“,并将"copy to output directory”设置为"copy always“。它不会被自动包含,因为它是对ClickOnce应用程序的次要引用,而不是像dll那样的直接/主要引用。
发布于 2011-10-12 00:24:53
打开ClickOnce项目的发布属性。然后点击'Application Files...‘按钮。这将启动一个对话框,您可以在其中控制发布包中包含哪些文件。
为了让您的XLSX文件(或任何其他非构建文件)出现在该对话框中,您需要在属性窗口的build Action中将is标记为'Content‘。
发布于 2011-10-12 00:19:59
尝试将此文件包含到解决方案中,并将“复制到输出目录”设置为“始终复制”
https://stackoverflow.com/questions/7729202
复制相似问题