InnoSetup3:語(yǔ)法解析(二)

??接上回。安裝腳本段用于解析腳本中各個(gè)段的含義及使用方法。其包括[Setup]段、[Files]段、[Run]段等共17個(gè)字段,下面逐一進(jìn)行分析。

專注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)仁壽免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了成百上千企業(yè)的穩(wěn)健成長(zhǎng),幫助中小企業(yè)通過(guò)網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

[Setup]

??[Setup]段包含用于安裝程序和卸載程序的全局設(shè)置。某些提示對(duì)于你創(chuàng)建的任何安裝程序都是必須的。示例如下:

[Setup]
AppName=My Program
AppVerName=My Program Version 3.1
DefaultDirName={pf}\My Program
DefaultGroupName=My Program

??按默認(rèn),指令值的所有首位或末位無(wú)顯示字符將被分離。這可以通過(guò)質(zhì)控的值包含在雙引號(hào) "" 中避免。
?[Setup]段中可以包含編譯器相關(guān)指令(如:SourceDir、OutoutDir、OutputBaseFileName等)和安裝程序相關(guān)指令(如:AppId、AppName、AppVerName、DefaultGroupName等)。
?其中,[Setup]段必須包含的指令如下:

  • AppName
  • AppVerName
  • DefaultDirName

[Types]

??[Types]段是可選的,用來(lái)定義安裝程序在選擇組件頁(yè)面時(shí)可供選擇的所有安裝類型。如果你在[Components]段定義了組件,但沒有定義類型,在編譯時(shí)將創(chuàng)建一個(gè)默認(rèn)的安裝類型設(shè)置。如果你正在使用默認(rèn)(簡(jiǎn)體中文)消息文件,這些類型等同于下面示例中的類型。[Types]段示例如下:

[Types]
Name: "full"; Description: "Full installation"
Name: "compact"; Description: "Compact installation"
Name: "custom"; Description: "Custom installation"; Flags: iscustom

下列是[Types]段所有支持的參數(shù)列表:

  • Name(必需的)
    類型的內(nèi)部名字。用于定義[Components]段中組件參數(shù),告訴安裝程序組件屬于哪個(gè)類型。示例:

    Name: "full"
  • Description(必需的)
    類型的描述,可以包含常量。這個(gè)描述在安裝期間顯示。示例:

    Description: "完全安裝"
  • Flags
    這個(gè)參數(shù)是額外選項(xiàng)是設(shè)置,多個(gè)選項(xiàng)可以使用空格隔開。支持羨慕的選項(xiàng):
    iscustom :
    告訴安裝程序這個(gè)類型是自定義類型。用戶在安裝期間手動(dòng)改變了組件選擇,安裝程序會(huì)將安裝類型設(shè)置為自定義類型。注意,如果未定義自定義類型,安裝程序?qū)⒅辉试S用戶選擇一個(gè)安裝類型,并且不能手動(dòng)選擇/取消選擇組件。僅一種類型可以包含該標(biāo)記。示例如下:

    Flags: iscustom

    [Components]

    ??[Components]段是可選的,它定義安裝程序向?qū)У?em>選擇組件頁(yè)面中顯示的所有組件,以便于用戶定制安裝類型。
    ?只用這一個(gè)組件不會(huì)做任何事情,它需要“鏈接”到其他安裝目錄。示例如下:

    [Components]
    Name: "main"; Description: "主文件"; Types: full compact custom; Flags: fixed
    Name: "help"; Description: "幫助文件"; Types: full
    Name: "help\english"; Description: "English"; Types: full
    Name: "help\chinese"; Description: "簡(jiǎn)體中文"; Types: full

    該示例生成四個(gè)組件:"main"組件在最終用戶選擇一個(gè)名為"full"或"compact"的類型時(shí)安裝。帶有兩個(gè)子組件的"help"組件僅在用戶選擇"full"類型時(shí)安裝。
    下列是所支持的參數(shù)列表:

  • Name(必須的)
    組件的內(nèi)部名稱。
    在組件名稱中的 \ 或 / 字符符合計(jì)數(shù)是調(diào)用組件的層次。任何在層次 1 或更高層次的組件是子組件。在子組件前列出的小于子組件層次的組件是上級(jí)組件。其他有相同上級(jí)組件的組件之間稱為同級(jí)組件。
    如果上級(jí)組件未選定,則不能選定它的子組件。如果所有的子組件均未選定,則上級(jí)組件也不能選定,除非Components參數(shù)引用上級(jí)組件或上級(jí)組件包含checkablealone標(biāo)記。
    如果同級(jí)組件已經(jīng)標(biāo)有exclusive標(biāo)記,則它們之中只有一個(gè)可選。示例如下:

    Name: "help"
  • Description(必須的)
    組件的描述,可以包含常量。這個(gè)描述用于在安裝期間顯示給用戶參考。示例如下:

    Description: "幫助文件"
  • Types
    用空格隔開所屬組件的類型列表。如果用戶從這個(gè)列表中選擇了一個(gè)類型,這個(gè)組件將被安裝。
    如果未使用fixed標(biāo)記(見下文),這個(gè)列表中的任何自定義類型(使用iscustom標(biāo)記的類型)均會(huì)被安裝程序忽略。示例如下:
    Types: full compact
  • ExtraDiskSpaceRequired
    這個(gè)組件所需要的額外磁盤空間,類似于[Setup]段中的ExtrDiskSpaceRequired。示例如下:

    ExtraDiskSpaceRequired: 0
  • Flags
    這個(gè)參數(shù)是額外選項(xiàng)設(shè)置。多個(gè)選項(xiàng)可以使用空格隔開。其支持下面的選項(xiàng):
    checkblealone:
    指定當(dāng)一個(gè)組件的所有子組件未被選中時(shí),該組件可以被選中。默認(rèn)的,如果沒有Components參數(shù)直接引用到該組件,所有未選中的子組件都將導(dǎo)致該組件被設(shè)置為未選中狀態(tài)。
    dontinheritcheck:
    指定當(dāng)該組件被上級(jí)選中時(shí),不影響組件選擇狀態(tài)。這不影響對(duì)頂層的組件,且該標(biāo)記不能與exclusive標(biāo)記一起使用。
    exclusive:
    告訴安裝程序該組件與其他擁有exclusive標(biāo)記的組件是互斥的。
    fixed:
    告訴安裝程序在安裝流程中該組件不提供選擇項(xiàng)供用戶選擇。
    restart:
    告訴安裝程序若安裝該組件,則無(wú)論是否需要,都告訴用戶重啟電腦。(例如,[Files]段條目用了restartreplace標(biāo)記),這有點(diǎn)像AlwaysRestart,但并不是每個(gè)組件都需如此。
    diableenouninstallwarning:
    如果這個(gè)組件在電腦上已安裝,則重建安裝時(shí)用戶取消安裝該組件,該標(biāo)記告訴安裝程序不進(jìn)行警告提示用戶將不卸載該組件。
    根據(jù)組件的復(fù)雜性,可使用[installDelete]段和該標(biāo)記來(lái)自動(dòng)卸載未選定的組件。
    示例如下:
    Flags: fixed

    [Tasks]

      [Tasks]段是可選的,它定義安裝程序執(zhí)行安裝期間由用戶定制的任務(wù)。這些任務(wù)以選項(xiàng)框和單選項(xiàng)形式出現(xiàn)在附加任務(wù)向?qū)ы?yè)中。
      該段本身是不做任何事情的,它需要“鏈接”到其他安裝條目。示例如下:

    [Tasks]
    Name: desktopicon; Description: "創(chuàng)建桌面快捷方式(&D)"; GroupDescription: "添加快捷方式:"; components: main
    Name: Desktopicon\common; Description: "對(duì)于所有用戶"; GroupDescription: "添加快捷方式:"; Components: main; Flags: exclusive
    Name: desktopicon\user; Description: "僅對(duì)當(dāng)前用戶"; GroupDescription: "添加快捷方式: quicklaunchicon; Description: "創(chuàng)建快速啟動(dòng)欄快捷方式(&Q)"; GroupDescription: "添加快捷方式:"; Components: main; Flags: unchecked
    Name: associate; Description: "文件關(guān)聯(lián)(&A)"; GroupDescription: "其他任務(wù)"; Flags: unchecked

    下面是所支持的參數(shù)列表:

  • Name(必需的)
      任務(wù)的內(nèi)部名字。
      在組件名稱中的 \ 或 / 字符符合計(jì)數(shù)是調(diào)用組件的層次。任何在層次 1 或更高層次的組件是子組件。在子組件前列出的小于子組件層次的組件是上級(jí)組件。其他有相同上級(jí)組件的組件之間稱為同級(jí)組件。
      如果上級(jí)組件未選定,則不能選定它的子組件。如果所有的子組件均未選定,則上級(jí)組件也不能選定,除非Components參數(shù)引用上級(jí)組件或上級(jí)組件包含checkablealone標(biāo)記。
      如果同級(jí)組件已經(jīng)標(biāo)有exclusive標(biāo)記,則它們之中只有一個(gè)可選。示例如下:

    Name: "desktopicon"
    • Description(必需的)
        任務(wù)的描述,可包含常量。該描述用于在安裝期間進(jìn)行顯示。示例如下:

      Description: "創(chuàng)建桌面快捷方式(&D)"
    • GroupDescription
        任務(wù)組的描述,可包含常量。擁有相同描述的連續(xù)任務(wù)將會(huì)被分配到同一個(gè)帶文字標(biāo)簽的組中。該文字標(biāo)簽用于顯示任務(wù)組的描述信息。示例如下:

      GroupDescription: "附加圖標(biāo)"
    • Components
      該任務(wù)所屬的組件列表,列表中組件用空格隔開的。當(dāng)用戶選擇一列表中組件時(shí),該任務(wù)將被顯示;不帶組件參數(shù)的任務(wù)總是被顯示。示例如下:

      Components: main
    • Flags
      這個(gè)參數(shù)是額外選項(xiàng)設(shè)置。多個(gè)選項(xiàng)可以使用空格隔開。其支持下面的選項(xiàng):
      checkblealone:
      指定當(dāng)一個(gè)組件的所有子組件未被選中時(shí),該組件可以被選中。默認(rèn)的,如果沒有Components參數(shù)直接引用到該組件,所有未選中的子組件都將導(dǎo)致該組件被設(shè)置為未選中狀態(tài)。
      dontinheritcheck:
      指定當(dāng)該組件被上級(jí)選中時(shí),不影響組件選擇狀態(tài)。這不影響對(duì)頂層的組件,且該標(biāo)記不能與exclusive標(biāo)記一起使用。
      exclusive:
      告訴安裝程序該組件與其他擁有exclusive標(biāo)記的組件是互斥的。
      fixed:
      告訴安裝程序在安裝流程中該組件不提供選擇項(xiàng)供用戶選擇。
      restart:
      告訴安裝程序若安裝該組件,則無(wú)論是否需要,都告訴用戶重啟電腦。(例如,[Files]段條目用了restartreplace標(biāo)記),這有點(diǎn)像AlwaysRestart,但并不是每個(gè)組件都需如此。
      diableenouninstallwarning:
      如果這個(gè)組件在電腦上已安裝,則重建安裝時(shí)用戶取消安裝該組件,該標(biāo)記告訴安裝程序不進(jìn)行警告提示用戶將不卸載該組件。
      根據(jù)組件的復(fù)雜性,可使用[installDelete]段和該標(biāo)記來(lái)自動(dòng)卸載未選定的組件。
      示例如下:
      Flags: unchecked

    [Dirs]

    [Files]

    [Icons]

    [INI]

    [InstallDelete]

    [Languages]

    [Messages]

    [CustomMessages]

    [LangOptions]

    [Registry]

    [Run]

    [UninstallDelete]

    [UninstallRun]

網(wǎng)站標(biāo)題:InnoSetup3:語(yǔ)法解析(二)
網(wǎng)頁(yè)URL:http://muchs.cn/article24/pideje.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)標(biāo)簽優(yōu)化、商城網(wǎng)站網(wǎng)站營(yíng)銷、網(wǎng)站設(shè)計(jì)公司、面包屑導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名