Ярлык, созданный в VS 2008, не отображается в меню «Отправить» - PullRequest
2 голосов
/ 14 июня 2010

У меня есть приложение WinForms, созданное с использованием Visual Studio 2008. Я добавил проект установки в решение для создания установочного MSI-файла. Мне нужен проект установки, чтобы создать ярлык, указывающий на исполняемый файл приложения в меню «Отправить». Таким образом, когда кто-то щелкнет правой кнопкой мыши по файлу, мое приложение отобразится в списке «Отправить» и будет выбрано.

Я выяснил в настройках файловой системы проекта Setup, как добавить ярлык в меню Send Send To Users. Проблема в том, что ярлык не отображается в меню «Отправить» при щелчке правой кнопкой мыши по файлу. Если я вручную создаю ярлык для своего исполняемого файла, приложение отображается в меню «Отправить».

Я прочитал много предложений в Интернете о необходимых записях в реестре, чтобы это работало. Существует файл VBS, написанный Рамешом Шринивасаном, который вставляет их. В каждой системе, в которой я пробовал это для значений реестра, уже существует, так что это проблема , а не . Кажется, что больше с ярлыком Visual Studio (или MSI в любом случае) создает.

У меня возникла такая же проблема в Windows XP и Windows 7, я еще не пробовал ее в других ОС.

1 Ответ

2 голосов
/ 30 декабря 2010

В меню «Отправить» требуется, чтобы ярлык был обычным ярлыком, указывающим на исполняемый файл. Ярлыки, созданные Visual Studio при создании MSI, являются объявленными ярлыками. Объявленные ярлыки указывают не на установленный исполняемый файл, а на установщик MSI, что позволяет выполнять установку по требованию.

Вам потребуется установить свойство DISABLEADVTSHORTCUTS в MSI, чтобы иметь регулярные ярлыки. К сожалению, вам придется использовать событие после сборки в установщике, чтобы установить свойство DISABLEADVTSHORTCUTS - Visual Studio не предоставляет простой способ его установки.

См. Ответ Дэмиена Фогеля на это сообщение , в котором подробно описано, как установить событие после сборки.

...