Прочитайте файл app.config в Installscript
Я хочу знать, как читать строку подключения из app.config с помощью installshield es, хотя есть возможность импортировать XML-структуру файла app.config, но проблема в том, что раздел соединения обновляется во время выполнения.
Во время обновления мне нужно получить секцию строки подключения файла app.config, есть ли способ реализовать это.
Спасибо
1 ответ
Вы можете использовать функцию "Изменение текстового файла", чтобы обновить строку подключения. Пожалуйста, поместите параметр foreach для текстового держателя, который вы хотите заменить. Ниже приведена помощь Installshield:
проект
Эта информация относится к следующим типам проектов:
Базовое преобразование базы данных MSI InstallScript MSI MSI Эта информация не относится к проектам InstallScript; однако язык InstallScript включает строковые функции для поиска и изменения строковых переменных и литералов. Вы можете использовать эти функции в проектах InstallScript.
Вы можете использовать свойство установщика Windows, чтобы указать текстовые строки, которые вы ищете или заменяете. Вы также можете использовать свойство для указания текстовых файлов, которые вы включаете или исключаете из поиска.
Во время выполнения установщик Windows использует MsiFormatRecord для разрешения значения свойства и использует это значение для изменения вашего текстового файла. Это позволяет использовать данные, которые конечные пользователи вводят в диалоговых окнах, или другую информацию о конфигурации, которая определяется во время выполнения, когда текстовые файлы вашего продукта изменяются во время выполнения.
Пример Следующая процедура демонстрирует, как позволить конечным пользователям указывать во время установки IP-адрес, который должен быть записан в файл web.config на основе XML во время выполнения. Файл web.config устанавливается вместе с продуктом в INSTALLDIR и содержит XML, например:
<appSettings>
<add key="IP Address" value="default" />
</appSettings>
Значение по умолчанию, выделенное жирным шрифтом, должно быть заменено IP-адресом, который вводит конечный пользователь.
Обратите внимание, что вы можете заменить жестко запрограммированное значение свойством для следующих настроек набора замен в представлении "Изменения в текстовом файле":
Включить файлы Исключить файлы Кроме того, вы можете использовать свойство для следующих параметров элемента замены в представлении "Изменения в текстовом файле":
Найти, что заменить Замените свойство, указанное в любом из этих параметров, в квадратных скобках, а имя свойства должно быть в верхнем регистре; например, [MYPROPERTY].
Шаг 4 процедуры немного отличается в зависимости от типа проекта, поскольку установщик Windows управляет пользовательским интерфейсом установок Basic MSI, а механизм InstallScript управляет пользовательским интерфейсом установок MSI InstallScript.
задача
Чтобы позволить конечным пользователям указывать IP-адрес:
В списке просмотра в разделе "Конфигурация системы" нажмите "Изменения в текстовом файле". Добавьте и настройте элемент набора замены, который идентифицирует файл, в котором вы хотите выполнить поиск установки: щелкните правой кнопкой мыши проводник "Изменения в текстовом файле" и выберите "Добавить набор замены". InstallShield добавляет новый элемент набора для замены. Шаги 2b-2d объясняют, как настроить его параметры, которые отображаются на правой панели.
В настройках целевой папки выберите свойство каталога [INSTALLDIR]. В настройке "Включить файлы" введите следующее: web.config
Оставьте значения по умолчанию для других настроек. Добавьте и настройте элемент замены, который определяет критерии поиска и замены. В проводнике "Изменения в текстовом файле" щелкните правой кнопкой мыши элемент набора замены, созданный на шаге 2, и выберите "Добавить замену". InstallShield добавляет новый элемент для замены. Шаги с 3b по 3d объясняют, как настроить его параметры, которые отображаются на правой панели.
В настройке "Найти что" введите следующее:
В настройке "Заменить на" введите следующее:
Оставьте значения по умолчанию для других настроек. Используйте свойство в диалоге. Эта часть процедуры зависит от того, какой тип проекта вы используете. Для базовых проектов MSI: в Списке просмотра в разделе Интерфейс пользователя нажмите Диалоги. В проводнике диалоговых окон разверните папку "Все диалоговые окна" и щелкните язык в диалоговом окне, которое должно содержать элемент управления "Имя пользователя". В качестве альтернативы вы можете добавить новый диалог. Добавьте элемент управления Edit Field в диалоговое окно и установите для его свойства Property следующее: MYPROPERTY
Для проектов MSI InstallScript: в Списке представлений в разделе "Поведение и логика" нажмите "InstallScript". Найдите код диалога в событии OnFirstUIBefore для диалога, который должен содержать элемент управления "Имя пользователя", и добавьте вызов функции API установщика Windows MsiSetProperty. Например, если вы хотите, чтобы конечные пользователи вводили IP-адрес в поле редактирования в диалоговом окне SdShowDlgEdit1, которое вы добавили в свой проект, вы бы добавили вызов MsiSetProperty, как показано в следующих строках кода: Dlg_SdShowDlgEdit1:
nResult = SdShowDlgEdit1 (szTitle, szMsg, szField1, svEdit1);
MsiSetProperty (ISMSI_HANDLE, "MYPROPERTY", svEdit1);
if (nResult = BACK) goto Dlg_SdWelcome;
Создайте свой релиз.