首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >InstallShield相对文件路径

InstallShield相对文件路径
EN

Stack Overflow用户
提问于 2011-08-02 21:10:13
回答 6查看 33K关注 0票数 29

如何将文件添加到指定InstallShield项目的相对路径的InstallShield组件中,以便在不同的计算机上轻松编译项目?

EN

回答 6

Stack Overflow用户

回答已采纳

发布于 2011-08-05 13:56:20

你可以使用<path variables> (see documentation -从Wayback复活,2018年8月)来将你所有的文件指向它们。

另请参阅this blog post

票数 17
EN

Stack Overflow用户

发布于 2014-05-14 06:59:51

使用InstallShield的免费VS限量版,设置自定义路径看起来是不可能的。因此,黑客攻击ISL文件可能是必要的,只有几个预定义的路径选项可用。

以下是我在2013 Express文档中找到的预定义路径变量:(在输入错误的情况下进行验证)

代码语言:javascript
复制
    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 AddIn和InstallShield LE安装项目。尽管InstallShield包含了AddIn生成的输出和相关的程序集,但清单和vsto文件都没有包含在内。所以我需要分别指定它们。这适用于一台工作站;然而,共享该解决方案的另一台工作站具有不同的源目录结构,提供了未解析的源。

清单文件和vsto文件是由InstallShield使用绝对路径添加的。一个对所有工作站通用的符号链接本可以解决这个问题,但我决定破解ISL文件,看看是否有可能使用相对路径来实现ISL文件在将来可能需要维护黑客。

为了获得公共父目录(即我的示例中的解决方案目录),我指定了以下两个父选择器(....)中列出的特殊工件的ISL中。

代码语言:javascript
复制
...<td>&lt;ISPROJECTDIR&gt;..\..\MyProject\bin\Release\...

其中,HTML实体用于变量的周围小于/大于符号。

我使用变量而不是运行了第二个测试(应该是第一个)。在这个测试中,只需要一个父选择器:

代码语言:javascript
复制
...<td>&lt;ISPROJECTFOLDER&gt;..\MyProject\bin\Release\...

到目前为止,事情似乎都在正确解决,但你的相对论可能会有所不同。

票数 31
EN

Stack Overflow用户

发布于 2013-04-18 13:49:31

<ISProjectFolder>是包含Install Shield项目的目录的宏。

(答案放在这个页面上要容易得多……)

票数 13
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6912608

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档