Вставить в таблицу RemoveFile в MSI - PullRequest
1 голос
/ 30 ноября 2011

Чтобы автоматизировать некоторые действия в MSI, я пытался вставить в таблицу RemoveFile, используя JScript, и продолжаю получать ошибки, и так как описания ошибок не так много, я не могу выяснить проблему в запросе и единственную ошибку, котораяя получаю, когда пытаюсь отладить с помощью csript: -2147467259 OpenView, SQL,

Это запрос, который я использую для вставки в таблицу removefile. Может кто-нибудь помочь мне разобраться в проблеме.

"INSERT INTO `RemoveFile` (`FileKey`, `Component_`, `FileName`, `DirProperty`, `InstallMode`) VALUES (`_142D31F52C744D6FB945F01BA06EEFB3`, `C__931358B017AE83C769F5CB9E95BD2401`, `Product version 2.0.lnk`, `DesktopFolder`, 1)

1 Ответ

0 голосов
/ 01 декабря 2011

Открыли ли вы представление в базе данных установщика?

var installer = WScript.CreateObject("WindowsInstaller.Installer");
var database = installer.OpenDatabase(<your-product.msi>,
                                      msiOpenDatabaseModeTransact);

sql = "INSERT INTO `RemoveFile` "
          + "(`FileKey`, `Component_`, `FileName`, "
              + "`DirProperty`, `InstallMode`) "
          + "VALUES ('_142D31F52C744D6FB945F01BA06EEFB3', "
                   + "'C__931358B017AE83C769F5CB9E95BD2401', "
                   + "'Product version 2.0.lnk', 'DesktopFolder', 1)";
view = database.OpenView(sql);
view.Execute();
view.Close();
...