• 週二. 2 月 17th, 2026

天南訊息

IT 工作者的工作紀錄

Inno Setup 資料夾建立問題

個人頭像照片

By伍芳左

1 月 25, 2026

[Icons]

;Name: “{group}\{#AppName}”; Filename: “{app}\KIIN_R.exe”; IconFilename: “{app}\sql.ico”; IconIndex: 0

Name: “{group}\{cm:UninstallProgram,{#AppName}}”; Filename: “{uninstallexe}”

Name: “{group}\電子標單系統”; Filename: “{app}\KIIN_R_A.exe”

Name: “{group}\個案系統”; Filename: “{app}\KIIN_R_B.exe”

Name: “{group}\程式同步”; Filename: “{app}\KIIN_R_C.exe”

Name: “{commondesktop}\{#AppName}”; Filename: “{app}\KIIN_R.exe”; IconFilename: “{app}\sql.ico”; IconIndex: 0; Tasks: desktopicon\common

Name: “{userdesktop}\{#AppName}”; Filename: “{app}\KIIN_R.exe”; IconFilename: “{app}\sql.ico”; IconIndex: 0; Tasks: desktopicon\user

Name: “{autodesktop}\{#AppName}”; Filename: “{app}\KIIN_R.exe”; IconFilename: “{app}\sql.ico”; IconIndex: 0

這樣沒有 做出 資料夾

這段代碼之所以沒有建立資料夾,是因為在 Inno Setup 的 [Icons] 區段中,資料夾的建立通常是由 路徑名稱 直接決定的。

在你的腳本中,你使用了 {group} 這個常數。如果 [Setup] 區段中的 DefaultGroupName 沒有設定,或者你在安裝過程中選擇了「不建立程式集資料夾」,它就不會以資料夾的形式呈現。

以下是幾個關鍵點與修正建議:

1. 檢查 [Setup] 區段
確保你的腳本開頭有定義資料夾名稱:

Delphi
[Setup]
AppName=你的程式名稱
AppVersion=1.0
DefaultGroupName=我的應用程式資料夾 ; <— 這裡定義了 {group} 的名稱
2. 在 {group} 後方加上子資料夾(選用)
如果你希望在程式集中看到一個更明確的層級,你可以手動指定路徑:

Delphi
[Icons]
; 這樣會直接在 {group} 資料夾內產生圖示
Name: “{group}\{#AppName}”; Filename: “{app}\KIIN_R.exe”; IconFilename: “{app}\sql.ico”

; 如果你想強迫建立一個特定的子目錄,可以這樣寫:
Name: “{group}\子目錄名稱\電子標單系統”; Filename: “{app}\KIIN_R_A.exe”
3. 常見原因排查表
現象 原因 解決方法
圖示散落在開始功能表 Windows 10/11 的開始功能表邏輯與舊版不同,有時不會顯示層級資料夾。 這是系統機制,通常點開「所有應用程式」才能看到資料夾。
安裝時沒問資料夾 DisableProgramGroupPage 被設為 yes。 檢查 [Setup] 改為 DisableProgramGroupPage=no。
路徑錯位 {group} 指向的是當前使用者的開始功能表。 確保安裝時有勾選「建立程式目錄」。
建議的修正代碼範例
如果你希望結構更清晰,可以試著統一路徑:

Delphi
[Icons]
; 主程式
Name: “{group}\{#AppName}”; Filename: “{app}\KIIN_R.exe”; IconFilename: “{app}\sql.ico”; IconIndex: 0

; 放在同一個資料夾內的其他工具
Name: “{group}\電子標單系統”; Filename: “{app}\KIIN_R_A.exe”
Name: “{group}\個案系統”; Filename: “{app}\KIIN_R_B.exe”
Name: “{group}\程式同步”; Filename: “{app}\KIIN_R_C.exe”

; 反安裝程式(通常建議也放進資料夾)
Name: “{group}\{cm:UninstallProgram,{#AppName}}”; Filename: “{uninstallexe}”
提示: 在 Windows 10 之後的系統,如果你在「開始功能表」的第一層找不到,請點擊 「所有應用程式」,通常在那裡會看到以 DefaultGroupName 為名的資料夾。

需要我幫你檢查 [Setup] 區段的設定是否正確嗎?

個人頭像照片

By 伍芳左

MIS, ERP Pro... RHCE Member (7.2)

發表迴響