Задать переменные среды проекта Installsheild через интерфейс автоматизации - PullRequest
1 голос
/ 21 июня 2010

Я работаю над тем, чтобы упростить использование шаблона InstallShield, устанавливая компоненты, параметры и переменные среды из файла .ini через интерфейс автоматизации. Я озадачен тем, как правильно установить переменные окружения, вызываемые в проекте.

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

1 Ответ

2 голосов
/ 23 июня 2010

В последнее время я много занимался этим (в основном писал свой собственный DSL с использованием XML и обрабатывал его с помощью C # Linq-to-xml, обращаясь в ISAuto COM), и я нахожу очень много мест, где объектная модель просто не раскрывает то, что вам нужно. В этих случаях я сохраняю проект в двоичном формате и использую WiX DTF (вставьте любимую библиотеку взаимодействия MSI для любого языка, на котором вы программируете), чтобы выполнить непосредственную авторизацию MSI sql, аналогично использованию прямого редактора.

Однако для того, о чем вы говорите, согласно документации, есть метод AddEnvironmentVar для объекта ISWiComponent, который возвращает объект ISWiEnvironmentVar.

Из справки:

m_ISWiFeature.ISWiComponents ("MyComponent"). AddEnvironmentVar "MyEnvironment"

Класс ISWiEnvironmentVar имеет ряд атрибутов для различных настроек.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...