5

次のように、スタート メニューに自分のプログラムへのショートカットを追加したいと考えています。

MyAppPublisher\MyAppName\MyAppName

スクリプトにこれがあります:

DefaultGroupName={#MyAppPublisher}
Name: "{group}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"

ただし、スタート メニュー フォルダーは常に次のとおりです。

MyAppName\MyAppName

何か案は?

4

3 に答える 3

5

セクションNameのエントリのパラメータでこのパスを指定するのと同じくらい簡単です。[Icons]現在のスクリプトは のようなショートカットを作成しますMyAppPublisher\MyAppName。これは必要なことを行います:

#define MyAppName "MyAppName"
#define MyAppExeName "MyProg.exe"
#define MyAppPublisher "MyAppPublisher"

[Setup]
AppName={#MyAppName}
AppVersion=1.5
DefaultDirName={pf}\My Program
DefaultGroupName={#MyAppPublisher}
OutputDir=userdocs:Inno Setup Examples Output

[Files]
Source: "{#MyAppExeName}"; DestDir: "{app}"

[Icons]
; notice the full path to the created shortcut, {group} is taken from the Select
; Start Menu Folder page edit box (if shown), which is by default taken from the
; DefaultGroupName directive value; this start menu folder path is then followed
; by the tail of the shortcut path
Name: "{group}\{#MyAppName}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"
于 2013-02-21T13:19:34.023 に答える
4

グループをサブフォルダーに入れる場合は、サブフォルダーを指定する必要があります。

これを行う最善の方法は、DefaultGroupNameディレクティブの最後に追加することです。これにより、セットアップ ウィザードに正しい情報が表示され、ユーザーが必要に応じて単一のフォルダーまたは別の場所として完全に変更できるようになります。

DefaultGroupName={#MyAppPublisher}\{#MyAppName}

Windows 8 の [スタート] メニューは階層構造ではないため、ネストは表示されないことに注意してください。

于 2013-02-21T15:22:52.790 に答える
0

見つかったので、質問で提案されたスクリプトは正しいものでした。何らかの理由で、変更を有効にするためにスクリプトの新しいGUIDを生成する必要がありました。

于 2013-02-21T14:33:15.617 に答える