I need info on editing msi's with vbscript

Does anyone have any tutorials on this ?
Who is Participating?
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

Try the Windows Installer SDK, you can download it from MS

Some Sample like this scipt and an help is offered

' Windows Installer utility to execute SQL statements against an installer database
' For use with Windows Scripting Host, CScript.exe or WScript.exe
' Copyright (c) 1999, Microsoft Corporation
' Demonstrates the script-driven database queries and updates
Option Explicit

Const msiOpenDatabaseModeReadOnly = 0
Const msiOpenDatabaseModeTransact = 1

Dim argNum, argCount:argCount = Wscript.Arguments.Count
If (argCount < 2) Then
      Wscript.Echo "Windows Installer utility to execute SQL queries against an installer database." &_
            vbLf & " The 1st argument specifies the path to the MSI database, relative or full path" &_
            vbLf & " Subsequent arguments specify SQL queries to execute - must be in double quotes" &_
            vbLf & " SELECT queries will display the rows of the result list specified in the query" &_
            vbLf & " Binary data columns selected by a query will not be displayed"
      Wscript.Quit 1
End If

' Scan arguments for valid SQL keyword and to determine if any update operations
Dim openMode : openMode = msiOpenDatabaseModeReadOnly
For argNum = 1 To argCount - 1
      Dim keyword : keyword = Wscript.Arguments(argNum)
      Dim keywordLen : keywordLen = InStr(1, keyword, " ", vbTextCompare)
      If (keywordLen) Then keyword = UCase(Left(keyword, keywordLen - 1))
      If InStr(1, "UPDATE INSERT DELETE CREATE ALTER DROP", keyword, vbTextCompare) Then
            openMode = msiOpenDatabaseModeTransact
      ElseIf keyword <> "SELECT" Then
            Fail "Invalid SQL statement type: " & keyword
      End If

' Connect to Windows installer object
On Error Resume Next
Dim installer : Set installer = Nothing
Set installer = Wscript.CreateObject("WindowsInstaller.Installer") : CheckError

' Open database
Dim databasePath:databasePath = Wscript.Arguments(0)
Dim database : Set database = installer.OpenDatabase(databasePath, openMode) : CheckError

' Process SQL statements
Dim query, view, record, message, rowData, columnCount, delim, column
For argNum = 1 To argCount - 1
      query = Wscript.Arguments(argNum)
      Set view = database.OpenView(query) : CheckError
      view.Execute : CheckError
      If Ucase(Left(query, 6)) = "SELECT" Then
                  Set record = view.Fetch
                  If record Is Nothing Then Exit Do
                  columnCount = record.FieldCount
                  rowData = Empty
                  delim = "  "
                  For column = 1 To columnCount
                        If column = columnCount Then delim = vbLf
                        rowData = rowData & record.StringData(column) & delim
                  message = message & rowData
      End If
If openMode = msiOpenDatabaseModeTransact Then database.Commit
If Not IsEmpty(message) Then Wscript.Echo message
Wscript.Quit 0

Sub CheckError
      Dim message, errRec
      If Err = 0 Then Exit Sub
      message = Err.Source & " " & Hex(Err) & ": " & Err.Description
      If Not installer Is Nothing Then
            Set errRec = installer.LastErrorRecord
            If Not errRec Is Nothing Then message = message & vbLf & errRec.FormatText
      End If
      Fail message
End Sub

Sub Fail(message)
      Wscript.Echo message
      Wscript.Quit 2
End Sub

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today

From novice to tech pro — start learning today.

Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.