При нажатии на Сумма в примере ArbitraryMethod из Лекция 7, VS 2013 выдается ошибка: Необработанное исключение типа "System.InvalidOperationException" в System.Windows.Forms.dll Дополнительные сведения: Недопустимая операция в нескольких потоках: попытка доступа к элементу управления "lblResult" не из того потока, в котором он был создан. Затем: Необработанное исключение типа "System.InvalidOperationException" в mscorlib.dll Дополнительные сведения: Для каждой асинхронной операции метод EndInvoke может вызываться только один раз. |
Создание пакетов установки
Открываем меню изменения пользовательского интерфейса. Добавьте в раздел Start новое диалоговое окно Textboxes (A) и нажмите ОК (рис. 9.60).
Размещаем добавленное окно под диалоговым окном Installation Folder (рис. 9.61).
Устанавливаем следующие свойства окна:
Свойствам Edit2Visible, Edit3Visible и Edit4Visible устанавливаем значение false.
В окне Solution Explorer нажимаем на кнопку Custom Actions Editor. В открывшемся окне выделяем папку Install и в контекстном меню выбираем Add Custom Action (рис. 9.62):
В окне Select Item in Project в папке Application Folder нажимаем на кнопку Add Output. В Add Project output Group выбираем элемент Primary output и нажимаем OK (рис. 9.63).
Свойству CustomActionData созданного элемента Primary Output from InstallerClass (Active) устанавливаем значение /dbname=[CUSTOMTEXTA1] (рис. 9.64).
В результате у нас получилось приложение, состоящее из двух проектов. В окне Solution Explorer щелкаем правой кнопкой на названии проекта InstallerClass и выбираем пункт меню Build. Проделываем то же самое для проекта CustomActionSetup. В папке CustomActionSetup\Release появились файлы установки, запускаем Setup.exe. В процессе установки появляется окно для введения названия новой базы данных (рис. 9.65).
После установки приложения появится новая база данных SQL — в этом можно будет убедиться, запустив программу Enterprise Manager из группы Microsoft SQL Server в меню "Пуск". В рассмотренном примере использовалась локальная база данных — для установки БД на компьютере пользователя необходимо указать сервер базы данных с помощью пользовательского интерфейса проекта.
На диске, прилагаемом к книге, вы найдете проекты InstallerClass и CustomActionSetup (Code\Glava9\ InstallerClass и CustomActionSetup).
Создание автозагрузочного диска
Если программа распространяется на компакт-диске, лучше всего сделать этот диск автозагрузочным — при его вставке в лоток автоматически запустится программа установки. Для этого в файле autorun.inf, получаемом из обычного текстового файла, указываем иконку autorun.ico и файл setup.exe для запуска (рис. 9.66).
Для предоставления пользователю выбора программ из списка можно сделать html-страницу, с которой будут даваться гиперссылки на файлы установки setup.exe. программ. При размещении файла index.htm и иконки autorun.ico в корневом каталоге диска содержимое autorun.inf примет слендующий вид:
[autorun] OPEN=explorer.exe index.htm ICON=AUTORUN.ICO
На диске, прилагаемом к книге, вы найдете папку AUTORUN со всем содержимым для автоматического запуска программы установки (Code\Glava9\ AUTORUN).