2015-10-01 3 views
0

Я использую Inno Setup для создания установщика программного обеспечения Windows и хотел бы использовать пользовательский значок для распределенного exe-файла (который будет расположен в C> Program Files> MyProgram).Можно изменить значок файла приложения?

До сих пор я был в состоянии получить пользовательский значок, чтобы работать (вроде) для ярлыка на рабочем столе, используя следующий код, размещенный в разделе [Icon] ...

Name: "{commondesktop}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; IconFilename: "{app}\TheIcon.ico"; Tasks: desktopicon 

Когда Я говорю, что он «вроде» работал ... он настраивал значок ярлыка на рабочем столе, но качество значка выглядит ужасно по сравнению с качеством оригинального значка.

Но большая проблема ... Я не могу понять, как настроить значок для фактического файла приложения (exe) вообще или для ярлыка меню «Пуск».

Я бы предположил, что следующая строка будет делать трюк для файла приложения ...

Name: "{pf}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; IconFilename: "{app}\TheIcon.ico"; 

И я также предположил, что следующий код будет делать трюк для значка меню Пуска ...

Name: "{commonstartup}\{#MyAppName}"; Filename: "{app}\{#MyAppExeName}"; IconFilename: "{app}\TheIcon.ico"; 

Но не кубики. Он просто использует значок по умолчанию.

Может ли кто-нибудь сказать, что я делаю неправильно? Я бы опубликовал весь скрипт здесь, но кажется, что редактор кода переполнения стека не похож на кучу фигурных скобок на несколько строк (если кто-то знает способ, я буду рад опубликовать весь скрипт).

И FYI ... для этого конкретного проекта, изменив значок exe до запуска его через Inno Setup, кажется, не является вариантом (я попытался изменить его с помощью Resource Hacker, и хотя ему удалось сменить exe значок, он поврежден файл в процессе, где она не будет работать даже :(

Если это не представляется возможным, чтобы настроить значок файла приложения с помощью программы установки Inno, то у меня есть какие-то другие варианты?

ответ

2

Как вы знаете, значок приложения встроен в файл .exe. Программа Inno Setup не может изменять файлы .exe. И нет другого способа переопределить значок приложения внешним.

Перед созданием установщика вам необходимо самостоятельно отредактировать файл .exe.

Я лично использую Resource Hacker и не испытываю никаких проблем с ним.

Убедитесь, что лицензия приложения, которое вы изменяете, допускает такую ​​настройку.


Иконки в меню Пуск в Windows действительно установлены с помощью IconFilename. У меня также нет проблем с этим.

Проблема может заключаться в том, что Windows кэширует значки меню «Пуск». Поэтому, если у вас была эта запись в меню «Пуск», переустановка приложения с новыми значками когда-нибудь не заставит Windows сбросить кеш. Он отображает старые значки. Попробуйте удалить, перезапустить и переустановить.

+0

Спасибо за ваш ответ.Я думаю, что вы правы в том, что Windows кэширует значки меню «Пуск», потому что он работал с первым пользовательским значком, который я пробовал, но не смог при загрузке каких-либо других значков. Не знаю, почему я не смог получить Resource Hacker для вывода хорошего файла, но получившийся значок не выглядел слишком велик. Проведя немного больше исследований, похоже, что NSIS может иметь возможность изменять иконку exe-файла, поэтому мне придется поэкспериментировать с этим. – JustAnotherCoder

+0

@JustAnotherCoder Я только начал использовать Inno Setup несколько дней назад. Я хочу изменить значок по умолчанию для файла setup exe, который я создаю. Вы пробовали NSIS и выяснили, удалось ли изменить значок для файла EXE-установки из Inno Setup? –

Смежные вопросы