ПредишенСледващото

модификация разпределения
Windows Installer-базирани

Възможността да се променят Windows Installer-базирани дистрибуции са винаги се насладят на системните администратори и поддръжка на системата. Помислете за един от компонентите на комплекта за Windows Installer ресурс - orca.exe. Този инструмент е специално предназначен за решаване на тези проблеми.

Посрещане на предизвикателствата, свързани с автоматичното инсталиране на софтуера не се ограничава до помощта на клавишите със инсталация система Windows Installer. Като възможност за промяна на инсталационния пакет, достъп до база данни на всички параметри на разпространение, администраторът може да създаде пакети за автоматична инсталация без помощта на външни файлове, съдържащи различни настройки.

Обръщайки внимание база данни за управление на софтуер, съхранявана във MSI-файла.

Това е услуга на инсталиране и конфигуриране на софтуера, който е включен в операционната система. Тя може да се инсталира като сервизен пакет или отделно разпределение.

Windows Installer, както и всяка друга бързо решение, поддържа множество опции за командния ред, които осигуряват контрол на АИК:

  • / Norestart - не рестартирате компютъра, след като инсталирате актуализацията;
  • / Queit - за инсталиране на "тих" режим;
  • / Помощ - дисплей помощ на екрана, съдържащи ключове и кратко описание.

Кликнете два пъти върху файла с разширение * .msi е пуснат комунални услуги:

% SystemRoot% System32msiexec.exe / I * .msi

Таблица 1 съдържа списък с често използвани параметрите на командния ред, които осигуряват автоматичното инсталиране на приложението.

Таблица 1. параметрите на командния ред msiexec.exe

Достъпът до MSI-файл програмно

За да се осигури управлението на софтуер за бази данни, съхранявани в MSI-файл, използване на шаблона, както е показано в списъка 1. Трябва да се отбележи, че моделът за четене на данни е различно от схемата за корекция на данните. На него ще бъдат обсъдени поотделно.

Обява 1. Влезте в шаблон на базата данни в MSI-файл

Задайте OBJ = CreateObject ( "WindowsInstaller.Installer")

Комплект база = obj.OpenDatabase (MSI, Mode)

В модела на първия ред се осъществява връзка с COM-обект, чрез който достъп до базата данни.

На следващия ред се осъществява връзка с базата данни чрез метод, който се OpenDatabase два аргумента. Първият от тях - име на база данни, която е най-пълният път до MSI-файла. Вторият - начина на достъп до базата данни:

На третия - осъществява изпълнението, определена от искането. SQL-заявка е определена с помощта на метод OpenView и заявки - чрез Изпълнение метод.

Спомнете си, че в SQL-заявките Регистрирайте имена на полета и имена на таблици е важно.

Последният ред на записване на промените в базата данни с помощта на ангажират команда.

Работа с таблици в orca.exe

Следните действия могат да се извършват граничи таблиците в базата данни:

  • четене на съществуващите области;
  • създаване на нови области;
  • премахване на полета;
  • промяна на областта.

Четене на съществуващи полета

шаблона се използва за реализиране на модел за търсене (вж. Обява 2), различен от този, показан на Обява 1. Това е така, защото пиша, изтриване, промяна се осъществява в едно поле, дисплей се извършва за всички полета.

листинг Трансформацията се осъществява в третия ред оферта 1. Тя е разделена на две поднизове - на линии 3 и 4 в Пример 2. Тук, методите се провеждат OpenView и изпълнение.

На следващо място, се извършва четене редове масив. Обърнете внимание, че полетата за SELECT заявките могат да бъдат изброени само по име. Стойността на "*" в този случай не работи. И по време на четене трябва да се посочи номерацията на полета (Record.StringData (1)), като се започне с един (1).

Обява 2 показва пример за четене на всички полета (собственост, стойности) маса на имота ACDSee 10 Фото Manager.msi:

Обявата 2. четене полета в таблицата е посочено

Задайте OBJ = CreateObject ( "WindowsInstaller.Installer")

Задайте об = obj.OpenDatabase ( "C: ACDSeeACDSee 10 Фото Manager.msi", 0)

настроен View = ob.OpenView ( "SELECT Имоти, Цена от собственост")

Задайте Запис = View.Fetch

Ако записът е Нищо Тогава Излезте Do

Wscript.Echo Record.StringData (1) + vbTab + vbTab + Record.StringData (2)

Задайте View = Нищо

Създаване на нови области

Създаване на нов поле се използва доста често, например, за да запишете програма в разпределението на неговия сериен номер. За да направите това трябва да добавите към полето за маса на имота PIDKEY с подходящата стойност, съдържащ серийния номер на продукта. За да добавите нова област, трябва да настроите курсора до желаната таблица (вж. Фиг. 3) и с натискане във всяка част на десния бутон на мишката, изберете Добавяне на ред, или натиснете клавишната комбинация. В резултат на списъка с наличните полета ще бъде даден диалогов прозорец. Необходимите стойности могат да бъдат определени в същия прозорец.

Фигура 3. Промяната на

Подобна операция може да се осъществи в софтуер (вж. Обявата 3). За да направите това, трябва да се обадите WindowsInstaller.Installer обект. Въз основа на модела, показан на Обява 1, образуват изброяването 3. Като втори параметър метод трябва да се посочи OpenDatabase 1, тъй като операцията за запис на данни се извършва.

Най-трудната част в тази обява правилно да се образува по искане. INSERT INFO функция искане е, че първата партида на скобите, които показват името на полето, името на полето трябва да се дава на родителя. Всички имена на параметри са посочени в молбата, без кавичките; всичко се зададат стойности - в кавички, и на последно място, имената на полетата и таблиците на буквите има.

Обява 3. Създаване на нов атрибут на масата

Задайте = CreateObject ( "WindowsInstaller.Installer")

Комплект б = a.OpenDatabase ( "C: acdseeACDSee 10 Фото Manager.msi", 1)

b.OpenView ( "INSERT INTO собственост.

(Property.Property, Property.Value) стойности ( "PIDKEY", "1234567890") "). Изпълнение

Премахване на съществуващи полета от таблицата

Отстраняване на всяка от областта се осъществява в съответствие със следния алгоритъм:

  • Поставете курсора на таблица, която искате да премахнете параметър;
  • поставите курсора върху подвижна маса параметър;
  • натиснете бутона на клавиатурата или десен бутон и от контекстното меню - ИЗТРИЙ;
  • потвърдете, че искате да премахнете тази опция.

Същият проблем може да бъде решен в софтуер (вж. Обявата 4) с помощта на шаблон 1. За да се осигури възможност за запис в таблицата трябва да определя втори параметър на метода OpenDatabase равна на една (1).

Обява 4. Премахване на съществуваща таблица атрибут

Задайте = CreateObject ( "WindowsInstaller.Installer")

Комплект б = a.OpenDatabase ( "C: acdseeACDSee 10 Фото Manager.msi", 1)

b.OpenView ( "Изтриване от имот, в който" PIDKEY "=" 1234567890 ")"). Execute

Съществуващите ценности полета

Промяна на стойността се извършва чрез поставяне на курсора в желаната клетка чрез двукратно щракване на левия бутон на мишката (виж. Фиг. 3).

Софтуер за промяна имоти се извършват от едни и същи правила. В сравнение с предишните два случая, се променя само поискване.

Обява 5 е изнесен детектор Устройство компонент.

Обява 5. Промени съществуващите стойности на полетата на маса

Задайте = CreateObject ( "WindowsInstaller.Installer")

Комплект б = a.OpenDatabase ( "C: acdseeACDSee 10 Фото Manager.msi", 1)

b.OpenView ( "UPDATE набор от функции Ниво =" 0 "КЪДЕ Feature =" DevDetect ""). Execute

След като внимателно разгледа предложената версия, читателят лесно ще можете да използвате или скрипт, за да VBScript или чрез orca.exe програма значително улесни задачата на маса инсталацията на софтуера, който ще спести много време и усилия.

Свързани статии

Подкрепете проекта - споделете линка, благодаря!