В настоящее время я пытаюсь расширить нашу программу установки, чтобы пользователь мог указать имя группы программ, в которой ярлыки создаются в меню «Пуск». (Я знаю, что это несколько устаревшее понятие)Как я могу использовать диалог для определения имени группы программ в Installshield 2015
Я использую InstallShield 2015
Я создал локализуемое свойство с именем [PROGRAMGROUP_NAME]. Это автоматически создало {ID_STRING46}, которое я установил для желаемого значения по умолчанию. Все идет нормально. Мне удалось создать пользовательский диалог с элементом управления редактирования, связанным с указанным выше свойством.
Теперь идет сложная часть: в разделе «Ярлыки» в разделе «Меню программ» сначала я хочу добавить папку с именем группы программ, под которой можно разместить несколько ярлыков. Если я введу [PROGRAMGROUP_NAME], это буквально то, что имя будет. Если я использую {ID_STRING46}, он использует значение по умолчанию, а не то, что я ввел в диалоговом окне.
Кстати, когда я пытался переименовать ID_STRING46 в нечто более значимое, другие вещи начали идти не так, поэтому я оставил это как есть.
Что здесь общего не работает? Как получить значение свойства, которое будет использоваться для имени папки?
EDIT
Я пытаюсь использовать пользовательские действия сейчас, но у меня есть проблема определения. Мой диалог, который устанавливает свойство, после CostFinalize, поэтому я предполагаю, что мне нужно использовать SetDirectory, но мне сложно определить его. Я получаю сообщение об ошибке с указанием «не удалось получить доступ к сетевой папке»
EDIT
Я сумел прогрессировать шаг. Я вручную добавил каталог с ключом DIRECTORY_PROGRAM_GROUP (важно, чтобы все его крышки были общедоступны) в таблицу каталогов. Затем я использую настраиваемое действие, чтобы установить этот каталог в желаемое значение [ProgramMenuFolder] [PROGRAM_GROUP_NAME] после запуска моего диалога, и я изменил ярлык, который будет создан в этой папке.
Кажется чтобы работать замечательно, однако, теперь программа группы больше не удаляются при удалении ...
Создание таблицы каталогов напрямую не работает; если я использую свойство [PROGRAMGROUP_NAME] в столбце DefaultDir таблицы Directory, я получаю группу программ с именем [PROGRAMGROUP_NAME] (буквально). Я пытаюсь использовать пользовательское действие сейчас, но у меня проблемы с его определением. Мой диалог, который устанавливает свойство, после CostFinalize, поэтому я предполагаю, что мне нужно использовать SetDirectory, но мне сложно определить его.Если я использую – MHJF