Visual Studio: условно создать ярлыки в проекте установки? - PullRequest
7 голосов
/ 08 октября 2009

Я работаю над проектом установки в Visual Studio и хотел бы, чтобы пользователь мог указать, создавать ли ярлык на рабочем столе и / или ярлык меню «Пуск» для программы с помощью флажков.

У меня есть возможность иметь установщик для создания рабочих ярлыков в соответствующих местах, и я добавил диалог, содержащий флажки для установщика; Тем не менее, я не могу создать (или их отсутствие) этих ярлыков, связанных с состоянием этих флажков.

Я предполагаю, что мне нужно установить свойства "Condition", но я не уверен в конкретном синтаксисе. Возможно ли это, и если да, то как мне это сделать?

Ответы [ 2 ]

8 голосов
/ 12 октября 2009

Связанный элемент обратной связи сказал:

В том случае, если вы хотите, чтобы флажок контролировал только установку ярлыка, а не его цель, в настоящее время нет решения в проектах установки Visual Studio , и это лучше всего выполнить либо с помощью дополнительного MSI знания и сценарий после сборки для изменения MSI вручную после каждой сборки или перехода на более продвинутый (и гибкий) инструмент для разработки установки (например, Windows Installer XML).

Вы не можете сделать это в интерфейсе VS point-and-click, но на самом деле не сложно сделать то, что вы хотите, с помощью простого пользовательского действия.

alt text

Определить скрипт в VBScript или JavaScript. Вы можете настроить запуск настраиваемого действия на основе любого условия, включая флажок в диалоговом окне.

alt text

Внутри скрипта вы анализируете ввод и создаете ярлык. Я использовал соглашение для разделения аргументов скрипта с помощью | характер, так вот как я разбираю:

var parameters = Session.Property("CustomActionData").split("|"); 
var targetDir = parameters[0];
var checkBoxState = parameters[1];
3 голосов
/ 08 октября 2009

Это невозможно.

Смотрите здесь Форум Microsoft Ответ от Microsoft в апреле этого года, посвященный той же проблеме, что и у вас.

...