我怎样才能将文件添加到一个InstallShield部件确定一个相对路径的InstallShield项目,以使其易于编译在不同机器上的项目?的InstallShield - 相对文件路径
回答
您可以使用<path variables>
(see documentation)您的所有文件都指向比较他们。
另见this blog post。
当你添加的文件,你应该尝试有它是相对的InstallShield项目文件。如果将.ism文件保存在源代码树中,那么您添加的任何可执行文件都应该具有相对于该文件的路径。
<ISProjectFolder>
是包含安装盾构工程目录中的宏。
(有此页面上的答案要容易得多......)
只是为了确保人们不会怀疑何时直接编辑项目文件(.isl),您需要使用< and >的转义符号。实际变量是 <ISProjectFolder> –
谢谢..这是我想要的。 – Abhishek
- 文件内容相对固定的路径,通过安装屏蔽限量版的输出目录(的Visual Studio 2012) 步骤被复制:
- 展开您安装在Solution Explorer中的项目,所以你看到的1,2,3,4,5,6部分
- 展开“2”和“文件” 双击你会看到一个四分屏页面:使用“源计算机文件”和“目标计算机文件”
- 删除硬编码的路径和文件从“目标计算机中的文件”
- 单击顶部左侧面板,上有您的文件为“内容文件”
- 右上方面板将显示“内容文件的项目从MyProject的”
- 点击并拖动这个到右下方面板(以下简称‘目标计算机中的文件’)
返回到您的项目,并确保你想要复制具有属性的所有文件: 生成操作=内容 和 复制到直接输出ORY =复制始终
比编辑项目文件好得多;构建行动=内容是我错过了。请注意,如果安装程序包含不需要的文件,请检查其生成操作是否设置为“无”。您可以通过右键单击 - >在“MyProject.Content文件”条目中解析项目输出来查看哪些文件将被复制。 – personne3000
这里是我的解决方案,如果你的 “源文件” 的磁盘partion不一样<ISProjectFolder>:
- 打开的InstallShield脚本文件(* .isl)用记事本;
- 知道的预定义变量“<VSSolutionFoler>”,这是你的安装解决方案文件夹
- 的文件夹替换文件(S)的绝对路径为相对路径“解决方案foler”。即& LT; VSSolutionFolder & GT; .. \ .. \ EXE \释放\程序myapp.exe
使用InstallShield的自由VS限定版,设置自定义路径看起来不可能的。因此只需要几个预定义的路径选项就可能需要攻击ISL文件。
以下是预定义的路径变量我在2013年的快速文档中发现:(在错别字的情况下确认)
Predefined Path Variable Value InstallScript Path Variable
--------------------------------------------------------------------------------------------------------------
<ProgramFilesFolder> C:\Program Files\ <PROGRAMFILES>
<CommonFilesFolder> C:\Program Files\Common Files\ <COMMONFILES>
<WindowsFolder> C:\Windows\ <WINDIR>
<SystemFolder> C:\Windows\System32\ <WINSYSDIR>
<ISProjectFolder> C:\InstallShield 2013 Projects\
<ISProjectDataFolder> <ISProjectFolder>\ProjectName <ISPROJECTDIR>
<ISProductFolder> C:\Program Files\InstallShield\2013
<ISRedistPlatformDependentFolder> C:\Program Files\InstallShield\2013\
.\Redist\Language Independent\i386
<ISRedistPlatformDependentExpressFolder> C:\Program Files\InstallShield\2013\
.\Redist\Language Independent\
.\i386 Express
我的VS解决方案包括一个Outlook外接程序和一个InstallShield LE安装项目。虽然InstallShield包含AddIn生成的输出和相关程序集,但是不包括清单文件和vsto文件。所以我需要分别指定这些。这适用于一个工作站;然而,共享该解决方案的另一台工作站具有不同的源目录结构,导致未解决的问题。
清单和vsto文件由InstallShield添加了绝对路径。所有工作站通用的符号链接可能已经解决了这个问题,但我决定破解ISL文件以查看是否可以使用相对路径实现ISL文件将来可能需要维护盗版。
为了获得共同的父目录(即我的情况下解决方案目录,)我指定的ISL在<表名称列出的特殊器物以下两个父选择(.. \ ..)= “文件”>。
...<td><ISPROJECTDIR>..\..\MyProject\bin\Release\...
其中HTML实体被用于周围低于/大于所述<ISPROJECTDIR>变量的符号。
我跑使用代替<ISPROJECTDIR>的<ISPROJECTFOLDER>可变的第二测试(其应该是第一)。在这个测试中,只有一位家长选择是必要的:
...<td><ISPROJECTFOLDER>..\MyProject\bin\Release\...
到目前为止,事情似乎被正确解析,但是你相对可能会有所不同。
这是我找到的最佳解决方案,尤其是当您添加不属于该项目的文件时。我正在使用相关变量
- 1. InstallShield LE - 文件的相对路径
- 2. 的InstallShield:使用LaunchAppAndWait()与相对路径
- 3. 相对路径文件
- 4. 相对路径文件
- 5. Codeigniter相对路径文件
- 6. Java文件相对路径
- 7. 相对文件路径
- 8. Java相对文件路径
- 9. 相对URL的绝对文件路径
- 10. DocFX'src'文件夹的相对路径
- 11. 获取文件的相对路径?
- 12. 资源文件的相对路径?
- 13. std文件流的相对路径
- 14. iphone:本地文件的相对路径?
- 15. PHP - 文件夹的相对路径?
- 16. WiX源文件的相对路径
- 17. CSS文件的相对路径?
- 18. perl中的相对文件路径
- 19. 获取文件的相对路径C#
- 20. Python包中的相对文件路径
- 21. log4j的相对文件路径
- 22. RSpec中的相对文件路径
- 23. 获取文件的相对路径asp.net
- 24. UWP从绝对路径或相对路径解析文件夹
- 25. 解决不存在的文件的类路径相对路径
- 26. 构建相对路径中的两个文件路径
- 27. 获取文件路径的相对路径?
- 28. 如何从QDir和相对文件路径创建绝对文件路径?
- 29. Javascript路径相对于文件
- 30. 指定相对文件路径
请参阅下面@bvj提供的答案,该答案应被标记为完整性的正确答案。 –
@Dror它可以与InstallShield限量版一起使用吗? – Eldho
@埃尔霍,不知道 - 检查这个问题:http://stackoverflow.com/questions/15390098/installshield-le-relative-paths-to-file – Dror