23

Innosetup でデスクトップ ショートカットを削除するにはどうすればよいですか? 以前のバージョンで作成されたもので、もう必要ありません。[InstallDelete]で削除してみた

[InstallDelete]
Type: files; Name: {userdesktop}\Shortcut Name

CurStepChangedイベントハンドラーの「ssInstall」でファイルを削除します

DeleteFile(ExpandConstant('{userdesktop}\Shortcut Name'));

しかし、それらは機能しません。どんな提案でも大歓迎です!

4

1 に答える 1

34

どちらのオプションでも機能しますが、いくつかの考慮事項があります。

1) ショートカットが特定のユーザーに対してインストールされているか、すべてのユーザーに対してインストールされているかに応じて、{userdesktop} または {commondesktop} を使用する必要があります。

2) ショートカット名に .lnk 拡張子を必ず追加する必要があります。

したがって、これはおそらく機能します:

DeleteFile(ExpandConstant('{userdesktop}\Shortcut Name.lnk'));
DeleteFile(ExpandConstant('{commondesktop}\Shortcut Name.lnk'));

また

[InstallDelete]
Type: files; Name: "{userdesktop}\Shortcut Name.lnk"
Type: files; Name: "{commondesktop}\Shortcut Name.lnk"
于 2009-09-06T13:30:36.597 に答える