Лучший способ развертывания приложения Visual Studio, которое может работать без установки

Я написал довольно простое приложение с C # /. NET и не могу найти хороший способ опубликовать его. Это своего рода «инструмент», который пользователи будут запускать только один раз или запускать каждые несколько месяцев. Из-за этого я надеюсь, что есть способ, которым я мог бы развернуть его там, где он не нуждался бы в установке для запуска (его можно было просто запустить, дважды щелкнув EXE-файл сразу после загрузки).

Тем не менее, по-прежнему необходимо (каким-то образом) включить правильную версию .NET, библиотеки и т. Д., Чтобы она работала корректно. Я знаю, что это включено при использовании ClickOnce, но оно все еще устанавливает приложение на компьютер пользователя.

Есть ли способ сделать это?

EDIT – \ bin \ Debug

myAppName.application myAppName.exe myAppName.exe.config myAppName.exe.manifest myAppName.pdb myAppName.vshost.application myAppName.vshost.exe myAppName.vshost.exe.config myAppName.vshost.exe.manifest extraLibrary.dll 

а также две папки

 app.publish Resources 

2 Solutions collect form web for “Лучший способ развертывания приложения Visual Studio, которое может работать без установки”

Это возможно и обманчиво легко:

  1. «Опубликовать» приложение (например, какую-нибудь папку на диске C) либо из меню « Сборка», либо из свойств проекта → « Опубликовать» . Это создаст установщик для приложения ClickOnce .
  2. Но вместо использования созданного установщика найдите созданные файлы (EXE-файл и файлы .config , .manifest и .application вместе с любыми DLL-файлами и т. Д.) – все они находятся в одной папке и, как правило, в bin\Debug ниже файла проекта ( .csproj ).
  3. Закройте эту папку (не оставляйте файлы * .vhost. * app.publish папку app.publish (они не нужны) и файлы .pdb, если вы не планируете отладку непосредственно в системе пользователя (например, с помощью дистанционного управления)), и предоставить его пользователям.

Дополнительным преимуществом является то, что в качестве приложения ClickOnce для него не требуются административные привилегии (если ваше приложение соответствует нормальным правилам, для которых папки используются для данных приложения и т. Д.).

Что касается .NET, вы можете проверить минимальную требуемую версию .NET, установленную (или вообще включенную) в приложение (большинство пользователей уже установили ее) и представить диалог со ссылкой на страницу загрузки на веб-сайте Microsoft (или указать на одну из ваших страниц, которые могут перенаправляться на страницу Microsoft – это делает ее более надежной, если изменяется URL-адрес Microsoft). Поскольку это небольшая утилита, вы можете настроить таргетинг на .NET 2.0, чтобы уменьшить вероятность того, что пользователь должен будет установить .NET.

Оно работает. Мы используем этот метод во время разработки и тестирования, чтобы избежать необходимости постоянной деинсталляции и установки приложения и по-прежнему близки к тому, как будет работать окончательное приложение.

Сначала вам нужно опубликовать файл:

  1. BUILD -> PUBLISH или щелкнув правой кнопкой мыши проект в обозревателе решений -> свойства -> опубликовать или выбрать проект в обозревателе решений и нажать Alt + Enter. ПРИМЕЧАНИЕ. Если вы используете Visual Studio 2013, тогда в свойствах вы должны перейти к BUILD, а затем вы необходимо отключить определение константы DEBUG и определить константу TRACE, и вы готовы к работе. Представление

  2. Сохраните файл в определенной папке. Найдите созданные файлы (EXE-файл и файлы .config, .manifest и .application вместе с любыми DLL-файлами и т. Д.) – все они находятся в одной папке и обычно находятся в папке bin\Debug под файлом проекта (.csproj). В Visual Studio они находятся в папке «Файлы приложений» и внутри них вам нужны только файлы .exe и dll. (Вы должны удалить ClickOnce и другие файлы, а затем сделать эту папку zip-файлом и распространять ее.)

ПРИМЕЧАНИЕ. Приложение ClickOnce устанавливает проект в систему, но имеет одно преимущество. Вам НЕ нужны административные привилегии для запуска (если ваше приложение следует нормальным правилам, для которых папки используются для данных приложения и т. Д.).

Interesting Posts

Именование контейнера в JSF2 / PrimeFaces

Исключение точки останова в Xcode

Как проверить наличие интернет-соединения в java?

Как реализовать отношения «многие ко многим» в PostgreSQL?

Скрытые черты Eclipse

Получить индексы n наибольших элементов в матрице

Команда команды Git ведет себя как «меньше»,

Использование API Карт Google для получения данных о времени поездки

Как я могу извлечь файл из встроенного ресурса и сохранить его на диск?

Сделать Windows всегда копировать файлы при перетаскивании их

Понимание сериализации Spark

Переместите Windows 7 на новый компьютер без оригинальных компакт-дисков

Не удалось выполнить проверку для одного или нескольких объектов. Дополнительную информацию см. В разделе «Свойство EntityValidationErrors».

CSS text-decoration подчеркивание цвета

Разница между строкой и текстом в рельсах?

Давайте будем гением компьютера.