0

Я не программист на полный рабочий день, но должен сделать немного, чтобы создать инструменты для поддержки моей работы. Я закончил писать свое приложение, которое мне сейчас нужно развернуть.Отсутствует тип проекта развертывания в Visual Studio 2012

Я не хочу использовать «ClickOnce», поскольку мне нужно изменить файлы в «локальной» папке во время настройки. Я понимаю, что если я использую параметр «Опубликовать» в меню «Построение», я использую «ClickOnce».

Мои исследования привели меня к мысли, что «вы делаете это, добавляя один или несколько проектов развертывания в свое решение». Затем в MSDN указано, что для этого мне нужно выбрать «Добавить проект» и «В появившемся диалоговом окне« Добавить новый проект »выберите папку« Программы установки и развертывания »».

Проблема в том, что у меня нет такой возможности?!

Может кто-то пролить свет на то, почему это так, и как я его исправляю. Я потратил полдня на поиски в Интернете и не мог придумать путь вперед?

Детали проекта и системы заключаются в следующем:

среды: Visual Studio 2012 Экспресс для рабочего стола Windows.
Текущий проект: приложение для Windows Form.
Операционная система: Windows 7 Professional.

ответ

1

Правильно, хотя его совет может быть, это старый учебник, который вы читаете. Вероятно, это относится к Visual Studio 2010.

That option has been removed in VS 2012. Вам нужно будет использовать альтернативный инструмент для создания вашего установщика. Например:

0

Я настоятельно рекомендую посмотреть на Wix #. См. http://www.codeproject.com/Articles/31407/Wix-WixSharp-managed-interface-for-WiX. Если вы делаете свое кодирование на C#, Wix #, это, вероятно, будет самым простым и удобным набором навыков для добавления, и оно будет бесплатным и будет напрямую интегрироваться в среду Visual Studio, которую вы используете.

Более подробная информация на домашней странице CodePlex для Wix #: http://wixsharp.codeplex.com/

Для C разработчиков # которым необходимо создать установщик Windows MSI для развертывания их приложений, Wix # является, пожалуй, лучшей заменой для «упаковки и развертывания» проект введите Microsoft, удаленную из Visual Studio, начиная с VS2012. Wix - это интерфейс C# для набора инструментов WiX (Windows Installer Xml). Использование Wix # позволяет создать полный Windows Installer MSI на языке C#.

Wix # полезен для широкого спектра сценариев установки/развертывания и достаточно хорошо подходит для сценариев непрерывной интеграции. Существуют примеры Wix # для развертывания настольных приложений Windows, для установки служб Windows и установки веб-сайтов ASP.NET и многих других типов установок.

Вопрос о необходимости установки приложений в Windows 7. Wix # поддерживает эту среду и отвечает типичным требованиям установщика, а код установщика Wix # для простых проектов действительно прост.Для приложений, которые являются более сложными и требуют расширенных функций, Wix # может при необходимости задействовать весь комплект WiX Toolset. Например, при установке приложения .NET типичным требованием было бы установить файлы exe и dll приложения, а также настроить некоторые файлы конфигурации .NET и/или записи реестра в целевой системе.

Ниже приведен пример кода C# для простого установщика Wix #, который устанавливает приложение в целевой системе и изменяет некоторые файлы конфигурации. В этом примере предполагается, что вы написали утилиту с именем «TailorMyConfig.exe», например, простую программу на C#, которая использует процедуры ConfigurationManager.AppSettings, и вы развертываете этот exe вместе с вашим приложением.

Обратите внимание, что существуют «лучшие» способы изменения конфигурационного файла с использованием функций WiX XML. Для простоты приведенный выше пример предполагал специальную утилиту C# exe для изменения файлов конфигурации. Я бы предложил использовать возможности WiX XML для этого. Вы можете включать практически любые возможности WiX XML непосредственно в настройку Wix # с использованием технологии Wix # «XML injection».

Помните, что Wix # является просто интерфейсом C#, который испускает синтаксис WiX XML. После того, как Wix # выпустил XML-файл WiX (файл wxs), этот файл wxs можно легко обработать, чтобы вставить дополнительные функции WiX XML. Затем полученный файл wxs скомпилируется с помощью набора инструментов WiX в MSI.

Для примера использования XML Injection для включения WIX XML функции в Wix # (C#) установки, смотрите здесь In Wix#, how to avoid creating a physical folder on the target system, when deploying only registry entries? В этом вопросе см мой ответ, который использует технику подключения делегата на «WixSourceGenerated» мероприятие.

Затем вы можете использовать этот подход внедрения XML для вставки некоторого WiX XML в ваш установщик, который выполнит редактирование файла конфигурации. Пример типичного WiX XML для изменения конфигурационных файлов находится здесь: How to modify .NET config files during installation?

Другим типичным требованием установщика является добавление или изменение записей реестра Windows в целевой системе. Wix # обеспечивает прямую поддержку для этого, используя класс «RegValue». Преимущество в том, что при использовании Wix # вы также получаете полную «возможность удаления» бесплатно, включая удаление/восстановление записей в реестре до состояния предварительной установки. Это естественный результат создания Wix # поверх технологии WiX Toolset и Windows Installer. Пример установки установщика Wix # только для реестров: In Wix#, how to avoid creating a physical folder on the target system, when deploying only registry entries?

Подход Wix # был очень полезен в моей среде, и он позволяет использовать привычный набор навыков C# без необходимости прыгать вперёд в полную сложность Технология установки WiX XML.

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