Vbscript не может изменить таблицу компонентов MSI? - PullRequest
0 голосов
/ 10 июня 2009

Я пытаюсь написать vbscript, чтобы удалить дублированную запись GUID компонента в таблице компонентов MSI. Но я всегда получаю ошибку 80004005, ошибку MSI API.

Означает ли это, что vbscript не может изменять / удалять таблицы компонентов?

Я знаю, что Transform может.

мой фрагмент кода:

    DeleteQuery = "delete from component where component.component="+comp
    Set DeleteView = Msmdatabase.OpenView(DeleteQuery)
    DeleteView.Execute
    DeleteView.Close

Ошибка происходит во время OpenView

спасибо, Уильям Л.

Ответы [ 2 ]

1 голос
/ 11 июня 2009

Ознакомьтесь с документацией установщика Windows, в частности, с разделом Синтаксис SQL

Имена таблиц ограничены 31 персонажи. Для получения дополнительной информации см. Имена таблиц. Имена таблиц и столбцов чувствительны к регистру. ключевые слова SQL без учета регистра.

0 голосов
/ 10 июня 2009

Ooopss. Я обнаружил свою ошибку. Vbscript не чувствителен к регистру, SQL не чувствителен к регистру,

Но имена таблиц и столбцов чувствительны к регистру !!!!

...