Тематический план ] [ Причины возникновения проблем совместимости. Методы выявления проблем совместимости ПО.]
 [ 1 ] [ 2 ] [ 3 ] 


Развертывание собственных баз данных для устранения проблем с совместимостью

Развертывание собственной базы данных исправления проблем с совместимостью в вашей организации требует выполнения указанных ниже действий.

  1. Храните собственную базу данных исправления проблем с совместимостью (SDB-файл) в расположении, доступном для всех компьютеров вашей организации.
  2. С помощью средства командной строки Сдбинст. exe установите специальную базу данных Fix для совместимости локально.

Для выполнения двух описанных выше условий мы рекомендуем использовать один из указанных ниже способов.

Вы можете упаковать файл. sdb и пользовательский скрипт развертывания в MSI-файл, а затем развернуть его в своей организации.

Важно!

Необходимо убедиться, что вы помечаете пользовательский сценарий таким образом, чтобы он не олицетворяет вызывающего пользователя. Например, если вы используете Microsoft® Visual Basic® Scripting Edition (VBScript), тип настраиваемого действия будет следующим: msidbCustomActionTypeVBScript + msidbCustomActionTypeInScript + msidbCustomActionTypeNoImpersonate = 0x0006 + 0x0400 + 0x0800 = 0x0C06 = 3078 decimal)

Файл. sdb можно сохранить в сетевой папке, а затем вызвать сценарий, находящийся на указанных компьютерах.

Важно!

Вы должны убедиться, что вы вызываете сценарий одновременно с получением повышенных прав. Например, вы должны вызвать сценарий, используя сценарии запуска компьютера вместо сценария входа пользователя. Кроме того, необходимо убедиться в том, что при установке настраиваемой базы данных исправления возникли права администратора.

Пример сценария для установки SDB-файла на основе MSI-файла

В приведенных ниже примерах показано, как установить настраиваемую базу данных Fix для устранения проблем с помощью MSI-файла.

'InstallSDB.vbs

Function Install

Dim WshShell

Set WshShell = CreateObject("WScript.Shell")

WshShell.Run "sdbinst.exe -q " & CHR(34) & "%ProgramFiles%\MyOrganizationSDB\MyOrg.sdb" & CHR(34), 0, true

WshShell.Run "cmd.exe /c " & CHR(34) & "del " & CHR(34) & "%ProgramFiles%\MyOrganizationSDB\MyOrg.sdb" & CHR(34) & CHR(34), 0

WshShell.Run "reg.exe delete HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{guidFromMyOrgsSdb}.sdb /f", 0

End Function

 

Function UnInstall

Dim WshShell

Set WshShell = CreateObject("WScript.Shell")

WshShell.Run "sdbinst.exe -q -u -g {guidFromMyOrgsSdb}", 0

End Function

Начальное развертывание и обновления

Большая часть тестирования проблем, связанных с совместимостью приложений, происходит до развертывания новой операционной системы Windows в среде. Таким образом, распространенный подход состоит в том, чтобы включить в свою корпоративное образ базу данных для устранения проблем с совместимостью, в том числе все известные проблемы. Затем, когда вы обновите базу данных для устранения проблем с совместимостью, вы можете предоставить обновления с помощью одного из двух механизмов, описанных в разделе "развертывание баз данных с исправлениями для обеспечения проблем с совместимостью", ранее в этой статье.