猿问

如何使用VS2010 Web部署包包含其他文件?

如何使用VS2010 Web部署包包含其他文件?

我正在使用visual studio 2010中的新网络打包功能进行测试,并遇到了一种情况,我使用预构建事件将所需的.dll复制到我的应用程序依赖于API调用的bin文件夹中。它们不能作为参考包含在内,因为它们不是可与interop一起使用的COM dll。

在我构建部署包时,当我选择仅包含运行应用程序所需文件的选项时,将排除这些文件。有没有办法配置部署设置以包含这些文件?我没有找到任何关于此的好文档。


智慧大石
浏览 684回答 3
3回答

拉风的咖菲猫

一个更简单的解决方案是编辑csproj文件以在bin文件夹中包含所需的dll,然后创建一个beforebuild目标,将项目从我们存储第三方dll的公共库文件夹复制到bin文件夹中。因为该项存在于解决方案文件中,所以它由msbuild / msdeploy部署,不需要任何复杂的操作。标签用于包含文件而不通过VS添加(通常会将其添加到您的VCS)<Content&nbsp;Include="Bin\3rdPartyNative.dll"&nbsp;><Visible>false</Visible></Content>这是适合我的BeforeBuild目标:<Target&nbsp;Name="BeforeBuild"> &nbsp;&nbsp;&nbsp;&nbsp;<Message&nbsp;Text="Copy&nbsp;$(SolutionDir)Library\3rdPartyNative.dll&nbsp;to&nbsp;'$(TargetDir)'3rdPartyNative.dll"&nbsp;Importance="high"&nbsp;/> &nbsp;&nbsp;&nbsp;&nbsp;<Copy&nbsp;SourceFiles="$(SolutionDir)Library\3rdPartyNative.dll"&nbsp;DestinationFiles="$(TargetDir)3rdPartyNative.dll"&nbsp;/></Target>编辑包括@ tuespetre建议隐藏条目,从而删除可见bin文件夹的先前缺点。我未经证实。
随时随地看视频慕课网APP
我要回答