2009-04-01 4 views
2

Я создал приложение, которое постоянно обновляется. Поэтому каждый раз, когда происходят изменения, я должен снова и снова включать его новые сборки в программу установки и развертывания. Есть ли способ упростить процедуру? Добавляемые файлы являются статическими по количеству и существуют в папке. Я слышал, что мы можем писать классы установщика в C#, имеет ли мое требование какое-либо отношение к этому?Упрощение установки и развертывания в C#

Я думаю, что ClickOnce не подходит моему требованию, потому что в первый раз я хочу, чтобы он запускался как установочный пакет, так как он имеет некоторые пакеты и некоторые параметры, которые необходимо реализовать на машине пользователя во время установки , Можете нажать один раз, помогите мне с этим? Также я хочу запустить приложение в качестве администратора и ссылаться на многие внешние DLL-файлы. Так это поможет моей цели?

Я, наконец, сделал это с помощью развертывания clickonce. Я использовал файлы содержимого, чтобы отметить все файлы, которые я хотел скопировать на целевой компьютер, и использовать развертывание Clickonce. Затем я изменил способ запуска своей программы, чтобы я мог использовать скрипт установщика, который я хотел запустить, только когда приложение запускается в первый раз. Далее я разместил его на IIS и мне пришлось менять много типов MIME и добавлять новые для загрузки для работы через Интернет.

ответ

5

Посмотрите на то, что называется развертыванием «ClickOnce». Это автоматизирует много того, о чем вы говорите.

EDIT: вы можете добавить пользовательские действия установщика в проект ClickOnce, как и любой другой, настроить дополнительные компоненты и многое другое. Что касается разрешений, ClickOnce позволит вам запускаться как администратор, если вы этого захотите, но это не рекомендуется, и он может скулить по этому поводу.

+0

hi..i обновил мой запрос, не могли бы вы снова взглянуть .. спасибо –

0

Я бы поместил файлы как Контент в их соответствующие свойства, а затем в проект развертывания, щелкните правой кнопкой мыши проект, перейдите в Файловую систему, а затем щелкните правой кнопкой мыши по папке, нажмите «Добавить» и выберите «Файлы содержимого» в диалоговом окне. Это должно копировать самые новые файлы за каждый раз, когда вы строите проект развертывания.

1

Вы можете добавить проект установки в свое решение внутри Visual Studio, а затем добавить другие проекты (ы) проекта или статические файлы в проект установки в качестве ссылок. Затем проект установки автоматически определит ваши зависимости, и каждый раз, когда вы выполняете перестроить все (или вы перестраиваете/создаете проект установки), он автоматически включает все необходимые файлы.

+0

Я думаю, что проект установки и развертывания не существует в Express Edition. Я прав? –

+0

Я не уверен. Может быть. Я не понял, что вопрос был для Express Edition. Виноват. – Petros

1

Какой проект? Во многих случаях ClickOnce может выполнять эту работу за вас, при номинальных усилиях.

Помимо этого - вы обычно можете подключить сборщик установщика к процессу сборки; некоторые инструменты сделают это для вас.

классы Installer работать на клиенте - так что я не думаю, что они имеют отношение к процессу сборки ...

+0

hi..i've обновил мой запрос, можете ли вы, пожалуйста, посмотреть еще раз .. спасибо –

3

Вы можете использовать ClickOnce (http://msdn.microsoft.com/en-us/library/t71a733d(VS.80).aspx), которые упрощают процесс развертывания. Возможно, вы также можете автоматизировать процесс сборки с помощью NANT (http://nant.sourceforge.net/).

HTH

+0

Было бы неплохо, если бы вы предоставили сценарий Нанта для выполнения задачи, которую Анируд просит –

+0

. Hi..i've обновил мой запрос, можете ли вы, пожалуйста, посмотреть еще раз .. спасибо –

2

Да, вы можете это сделать. Я предполагаю, что вы хотите, чтобы клиент обновлялся, когда есть новая версия.

Для этого требуется несколько изменений кода клиента. По сути, как это работает, проверьте наличие новой версии в предопределенном месте. Обновите новые версии до этого места. На стороне клиента покажите сообщение пользователю, если он хочет перейти на новую версию.

Вы можете найти ссылку на образец проекта here и here.

+0

Мне понравилось то, что вы сказали. Я собираюсь попробовать! –

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