我正在使用Visual Studio 2008中的Word 2007插件.addin项目在同一解决方案中引用了几个库项目。现在,对于属于addin项目的内容文件,我可以将“Build action”属性设置为“Content”和“Copy to output directory”为true,并且Clickonce与addin dll一起成功部署它们。但是,这不适用于addin项目引用的项目中包含的内容文件。我搜索了SO,显然我应该转到addin项目设置,切换到“Publish”选项卡,然后在“Application Files”对话框中添加所需的文件(reference)。问题是,我的addin项目的Publish选项卡上没有“Application files”对话框(我正在使用MSVS 2008)。我在这里错过了什么?简而言之,如何使用Clickonce从引用的项目部署内容文件?
答案 0 :(得分:1)
我在Visual Studio 2010中遇到了与辅助依赖关系和ClickOnce for VSTO类似的问题。
我修改了Visual Studio项目文件,以便为ClickOnce文件使用自定义ItemGroup
,并在PublishOnly
目标之后手动复制该组中的文件。
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<ItemGroup Label="Installer Files">
<ClickOnce Include="lib\**">
<InProject>false</InProject>
<Visible>false</Visible>
</ClickOnce>
</ItemGroup>
<Target Name="Package" DependsOnTargets="Build" AfterTargets="PublishOnly">
<!-- copy the ClickOnce files to the folder setup-->
<Copy SourceFiles="@(PublishTempFiles)" DestinationFolder="setup\%(RecursiveDir)" />
<!-- copy the lib binaries to the ClickOnce app files -->
<Copy SourceFiles="@(ClickOnce)" DestinationFiles="setup\$(ApplicationFilesFolderName)\$(ProjectName)_$(UnderscoredPublishVersion)\%(Filename)%(Extension).deploy" />
</Target>
</Project>