If you have Platform SDK installed (specifically, Windows Installer SDK) 
(http://www.microsoft.com/downloads/details.aspx?FamilyId=0BAF2B35-C656-4969-ACE8-E4C0C0716ADB&displaylang=en),
 in the Bin folder there is MsiInfo.exe file.  This tool allows setting Summary 
Info properties. To set the Title property:
msiinfo MyMsi.msi /T "My personal Title"




-----Original Message-----
From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Dominik Guder
Sent: Friday, March 14, 2008 4:24 AM
To: wix-users@lists.sourceforge.net
Subject: Re: [WiX-users] How to set Title in Summary Information Stream


Hi,

as Heath stated it's hardcoded. :(

But MS provided a vbs script (I couldn't find the link anymore)
We are using it on regular basis until we switch to wix, since the msi file
properties could not be set easily with wise installer in an automated
build.

See below

hth Dominik

' Windows Installer utility to manage the summary information stream
' For use with Windows Scripting Host, CScript.exe or WScript.exe
' Copyright (c) 1999, Microsoft Corporation
' Demonstrates the use of the database summary information methods

Option Explicit

Const msiOpenDatabaseModeReadOnly = 0
Const msiOpenDatabaseModeTransact = 1
Const msiOpenDatabaseModeCreate = 3

        Dim propList(19, 1)
        propList( 1,0) = "Codepage" :   propList( 1,1) = "ANSI codepage of text
strings in summary information only"
        propList( 2,0) = "Title" :              propList( 2,1) = "Package type, 
e.g.
Installation Database"
        propList( 3,0) = "Subject" :    propList( 3,1) = "Product full name or
description"
        propList( 4,0) = "Author" :     propList( 4,1) = "Creator, typically 
vendor
name"
        propList( 5,0) = "Keywords" :   propList( 5,1) = "List of keywords for 
use
by file browsers"
        propList( 6,0) = "Comments" :   propList( 6,1) = "Description of 
purpose or
use of package"
        propList( 7,0) = "Template" :   propList( 7,1) = "Target system:
Platform(s);Language(s)"
        propList( 8,0) = "LastAuthor" : propList( 8,1) = "Used for transforms 
only:
New target: Platform(s);Language(s)"
        propList( 9,0) = "Revision" :   propList( 9,1) = "Package code GUID, for
transforms contains old and new info"
        propList(11,0) = "Printed" :    propList(11,1) = "Date and time of
installation image, same as Created if CD"
        propList(12,0) = "Created" :    propList(12,1) = "Date and time of 
package
creation"
        propList(13,0) = "Saved" :              propList(13,1) = "Date and time 
of last
package modification"
        propList(14,0) = "Pages" :              propList(14,1) = "Minimum 
Windows Installer
version required: Major * 100 + Minor"
        propList(15,0) = "Words" :              propList(15,1) = "Source flags: 
1=short names,
2=compressed, 4=network image"
        propList(16,0) = "Characters" : propList(16,1) = "Used for transforms 
only:
validation and error flags"
        propList(18,0) = "Application": propList(18,1) = "Application associated
with file, ""Windows Installer"" for MSI"
        propList(19,0) = "Security" :   propList(19,1) = "0=Read/write 
1=Readonly
recommended 2=Readonly enforced"

        Dim iArg, iProp, property, value, message
        Dim argCount:argCount = Wscript.Arguments.Count
        If argCount > 0 Then If InStr(1, Wscript.Arguments(0), "?", 
vbTextCompare)
> 0 Then argCount = 0
        If (argCount = 0) Then
                message = "Windows Installer utility to manage summary 
information stream"
&_
                vbNewLine & " 1st argument is the path to the storage file 
(installer
package)" &_
                vbNewLine & " If no other arguments are supplied, summary 
properties will
be listed" &_
                vbNewLine & " Subsequent arguments are property=value pairs to 
be updated"
&_
                vbNewLine & " Either the numeric or the names below may be used 
for the
property" &_
                vbNewLine & " Date and time fields use current locale format, 
or ""Now""
or ""Date""" &_
                vbNewLine & " Some properties have specific meaning for 
installer
packages"
        For iProp = 1 To UBound(propList)
                property = propList(iProp, 0)
                If Not IsEmpty(property) Then
                        message = message & vbNewLine & Right(" " & iProp, 2) & 
" " & property &
" - " & propLIst(iProp, 1)
                End If
        Next
        Wscript.Echo message
        Wscript.Quit 1
        End If

        ' Connect to Windows Installer object
        On Error Resume Next
        Dim installer : Set installer = Nothing
        Set installer = Wscript.CreateObject("WindowsInstaller.Installer") : If
CheckError("MSI.DLL not registered") Then Wscript.Quit 2

        ' Evaluate command-line arguments and open summary information
        Dim cUpdate:cUpdate = 0 : If argCount > 1 Then cUpdate = 20
        Dim sumInfo : Set sumInfo =
installer.SummaryInformation(Wscript.Arguments(0), cUpdate) : If
CheckError(Empty) Then Wscript.Quit 2

        ' If only package name supplied, then list all properties in summary
information stream
        If argCount = 1 Then
        For iProp = 1 to UBound(propList)
                value = sumInfo.Property(iProp) : CheckError(Empty)
                If Not IsEmpty(value) Then message = message & vbNewLine & 
Right(" " &
iProp, 2) & " " & propList(iProp, 0) & " = " & value
        Next
        Wscript.Echo message
        Wscript.Quit 0
        End If

        ' Process property settings, combining arguments if equal sign has 
spaces
before or after it
        For iArg = 1 To argCount - 1
                property = property & Wscript.Arguments(iArg)
                Dim iEquals:iEquals = InStr(1, property, "=", vbTextCompare) 
'Must contain
an equals sign followed by a value
                If iEquals > 0 And iEquals <> Len(property) Then
                        value = Right(property, Len(property) - iEquals)
                        property = Left(property, iEquals - 1)
                        If IsNumeric(property) Then
                                iProp = CLng(property)
                        Else ' Lookup property name if numeric property ID not 
supplied
                                For iProp = 1 To UBound(propList)
                                        If propList(iProp, 0) = property Then 
Exit For
                                Next
                        End If
                        If iProp > UBound(propList) Then Wscript.Echo "Unknown 
summary property
name: " & property : Wscript.Quit 2
                        If iProp = 11 Or iProp = 12 Or iProp = 13 Then
                                If UCase(value) = "NOW" Then value = Now
                                If UCase(value) = "DATE" Then value = Date
                                value = CDate(value)
                        End If
                If iProp = 1 Or iProp = 14 Or iProp = 15 Or iProp = 16 Or iProp 
= 19 Then
value = CLng(value)
                sumInfo.Property(iProp) = value : CheckError("Bad format for 
property
value " & iProp)
                property = Empty
                End If
        Next
        If Not IsEmpty(property) Then Wscript.Echo "Arguments must be in the 
form:
property=value " & property : Wscript.Quit 2

        ' Write new property set. Note! must write even if error, else entire
stream will be deleted
        sumInfo.Persist

        If CheckError("Error persisting summary property stream") Then 
Wscript.Quit
2
        Wscript.Quit 0


Function CheckError(message)
        If Err = 0 Then Exit Function
        If IsEmpty(message) Then message = Err.Source & " " & Hex(Err) & ": " &
Err.Description
        If Not installer Is Nothing Then
                Dim errRec : Set errRec = installer.LastErrorRecord
                If Not errRec Is Nothing Then message = message & vbNewLine &
errRec.FormatText
        End If
        Wscript.Echo message
        CheckError = True
        Err.Clear
End Function
--
View this message in context: 
http://www.nabble.com/How-to-set-Title-in-Summary-Information-Stream-tp16030521p16048034.html
Sent from the wix-users mailing list archive at Nabble.com.


-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

-------------------------------------------------------------------------
This SF.net email is sponsored by: Microsoft
Defy all challenges. Microsoft(R) Visual Studio 2008.
http://clk.atdmt.com/MRT/go/vse0120000070mrt/direct/01/
_______________________________________________
WiX-users mailing list
WiX-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/wix-users

Reply via email to