如何让Visual Studio将特定文件复制到发布目录?

3

我正在使用Visual Studio的Publish功能为我的VSTO插件创建ClickOnce安装文件。

我知道,通过将文件的Build Action设置为Content,可以使文件与应用程序一起部署。假设我有一个名为readme.txt的文件,它的Build Action设置为Content,那么会发生以下情况:

publish
+-- setup.exe
+-- MyAddIn.vsto
+-- ApplicationFiles
    +-- ...lots of files..
    +-- readme.txt.deploy     <--

由于文件包含我希望用户在安装应用程序之前阅读的信息,因此这就是我想要发生的事情:

publish
+-- setup.exe
+-- MyAddIn.vsto
+-- readme.txt                 <--
+-- ApplicationFiles
    +-- ...lots of files..

有没有简单的方法来做到这一点?
2个回答

3
在项目文件底部:

在项目文件的底部:

<Target Name="AfterPublish">
    <Exec Command="xcopy.exe /Y &quot;$(TargetDir)readme.txt&quot; &quot;$(PublishUrl)&quot;" />
</Target>

如果这个更加普遍的场景对其他人有用,以下是我正在处理的内容:

"最初的回答"

<PropertyGroup>
    <ReadmeFilesDir>README-files</ReadmeFilesDir>
</PropertyGroup>

<Target Name="AfterPublish">
    <Exec Command="xcopy.exe /Y &quot;$(TargetDir)README.html&quot; &quot;$(PublishUrl)&quot;" />
    <Exec Command="xcopy.exe /E /I /Y &quot;$(TargetDir)$(ReadmeFilesDir)&quot; &quot;$(PublishUrl)$(ReadmeFilesDir)&quot;" />
</Target>

我在想是否有一个徽章是为回答一个六年前的问题而设立的。

最初的回答


-1
也许你可以使用一个后构建命令将文件移动到你想要的位置,然后向导会按原样打包文件夹。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接