gpt4 book ai didi

visual-studio-2010 - 如何使 Visual Studio 安装和部署项目 (Windows Installer) 中文件的 SourcePath 属性相对而不是绝对?

转载 作者:行者123 更新时间:2023-12-03 22:36:21 26 4
gpt4 key购买 nike

我有一个相对简单的项目,它受源代码控制(svn),我想创建一个安装程序。我知道我可以(应该)使用 WiX ,但由于我是创建安装程序的新手,我认为使用内置的 Visual Studio (2010) 安装和部署向导会更容易。

不幸的是,文件似乎包括外部(非项目维护)文档、配置文件和 "Content" files添加了绝对路径。这当然是次优的。我在网上搜索,但只找到了 same question ,没有答案。另一个 stackoverflow 用户似乎问了一个 similar question ,但唯一的答案,这表明 ClickOnce , 似乎偏离基础(我想要一个我分发的 MSI,而不是基于 Web 的安装)。

有谁知道如何(或是否)可以解决这个问题?

最佳答案

在 VS2005 中,有时存储在 vdproj 文件中的路径是绝对路径,有时是相对路径。就我而言,这似乎与是否通过规范路径访问文件有关。这是一个具体的例子:

源在 C:\Views\builddir,打开解决方案 C:\Views\builddir\solution.sln 并从 C:\Views\builddir\.. 添加文件,VS2005 会添加 亲戚 vdproj 文件中的路径。但是,如果您将该 builddir 映射到盘符驱动器,例如,将 C:\Views\builddir 的 subst 转换为 s:,请通过 S:\solution.sln 打开解决方案,然后通过导航到 S:\添加文件.., VS2005 会插入 绝对 vdproj 文件的路径。 VS2005 将路径显示为绝对路径还是相对路径与其存储在 vdproj 文件中的内容无关。

因此,问题很可能归结为您用来打开该解决方案的路径。打开\\server\shareddir\solution.sln 可能会得到与将\\server\shareddir 映射到 W: 并打开不同的行为w:\solution.sln。

您可以随时添加文件,然后使用文本编辑器(例如记事本)将 vdproj 文件中的绝对路径更改为相对路径。在您再次更改该项目之前,您会没事的。

MS 似乎并没有真正修复像这样的小错误,而是重写代码以引入一组完全不同的错误,因此 VS2010 可能仍然会这样做。

仅供引用,为什么要将绝对路径映射到您的构建目录?这是 VS 没有对相对路径做任何正确的事情的糟糕过去的遗留问题。

关于visual-studio-2010 - 如何使 Visual Studio 安装和部署项目 (Windows Installer) 中文件的 SourcePath 属性相对而不是绝对?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3345339/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com