はここに私のタスクのリストのショー:Inno Setupの - パスカルスクリプト - 条件付きの非表示/タスク
[Tasks]
Name: "D3D"; Description: "Install D3D Engine"; GroupDescription: "Engines:"
Name: "GL"; Description: "Install OpenGL Engine"; GroupDescription: "Engines:"; Flags: unchecked
Name: "SW"; Description: "Install Software Engine"; GroupDescription: "Engines:"; Flags: unchecked
Name: "DesktopIcon"; Description: "{cm:CreateDesktopIcon} for the Launcher"; GroupDescription: "{cm:AdditionalIcons}"
Name: "DesktopIconD3D"; Description: "{cm:CreateDesktopIcon} for the D3D Engine"; GroupDescription: "{cm:AdditionalIcons}"
Name: "DesktopIconGL"; Description: "{cm:CreateDesktopIcon} for the OpenGL Engine"; GroupDescription: "{cm:AdditionalIcons}"
Name: "DesktopIconSW"; Description: "{cm:CreateDesktopIcon} for the Software Engine"; GroupDescription: "{cm:AdditionalIcons}"
さて、私が達成したいことは、タスクが{engine}
という名前の場合DesktopIcon{engine}
という名前のタスク(複数可)を隠しています選択されていません。
タスクの1つを非表示にすると、インデックスリストが変更され、特にそれらを参照する必要があります。
サイドノート: ':D3D Engine'用{CM CreateDesktopIcon} - あなたがハードコーディングされた文字列でローカライズ文字列を結合しています。それは良い方法ではありません。 –