Windows Installer API (SDK)
Summary Information Stream
Referenz » Summary Information Stream | Microsoft Docs
VBS class Summary Information Stream
Class classSummeryInformation
Private mPIDCODEPAGE, mPIDTITLE, mPIDSUBJECT, mPIDAUTHOR, mPIDKEYWORDS
Private mPIDCOMMENTS, mPIDTEMPLATE, mPIDLASTAUTHOR, mPIDREVNUMBER
Private mPIDLASTPRINTED, mPIDCREATEDTM, mPIDLASTSAVEDTM, mPIDPAGECOUNT
Private mPIDWORDCOUNT, mPIDCHARCOUNT, mPIDAPPNAME, mPIDSECURITY
Public Property Get PIDCODEPAGE
PIDCODEPAGE = mPIDCODEPAGE
End Property
Public Property Let PIDCODEPAGE(strPIDCODEPAGE)
mPIDCODEPAGE = strPIDCODEPAGE
End Property
Public Property Get PIDTITLE
PIDTITLE = mPIDTITLE
End Property
Public Property Let PIDTITLE(strPIDTITLE)
mPIDTITLE = strPIDTITLE
End Property
Public Property Get PIDSUBJECT
PIDSUBJECT = mPIDSUBJECT
End Property
Public Property Let PIDSUBJECT(strPIDSUBJECT)
mPIDSUBJECT = strPIDSUBJECT
End Property
Public Property Get PIDAUTHOR
PIDAUTHOR = mPIDAUTHOR
End Property
Public Property Let PIDAUTHOR(strPIDAUTHOR)
mPIDAUTHOR = strPIDAUTHOR
End Property
Public Property Get PIDKEYWORDS
PIDKEYWORDS = mPIDKEYWORDS
End Property
Public Property Let PIDKEYWORDS(strPIDKEYWORDS)
mPIDKEYWORDS = strPIDKEYWORDS
End Property
Public Property Get PIDCOMMENTS
PIDCOMMENTS = mPIDCOMMENTS
End Property
Public Property Let PIDCOMMENTS(strPIDCOMMENTS)
mPIDCOMMENTS = strPIDCOMMENTS
End Property
Public Property Get PIDTEMPLATE
PIDTEMPLATE = mPIDTEMPLATE
End Property
Public Property Let PIDTEMPLATE(strPIDTEMPLATE)
mPIDTEMPLATE = strPIDTEMPLATE
End Property
Public Property Get PIDLASTAUTHOR
PIDLASTAUTHOR = mPIDLASTAUTHOR
End Property
Public Property Let PIDLASTAUTHOR(strPIDLASTAUTHOR)
mPIDLASTAUTHOR = strPIDLASTAUTHOR
End Property
Public Property Get PIDREVNUMBER
PIDREVNUMBER = mPIDREVNUMBER
End Property
Public Property Let PIDREVNUMBER(strPIDREVNUMBER)
mPIDREVNUMBER = strPIDREVNUMBER
End Property
Public Property Get PIDLASTPRINTED
PIDLASTPRINTED = mPIDLASTPRINTED
End Property
Public Property Let PIDLASTPRINTED(strPIDLASTPRINTED)
mPIDLASTPRINTED = strPIDLASTPRINTED
End Property
Public Property Get PIDCREATEDTM
PIDCREATEDTM = mPIDCREATEDTM
End Property
Public Property Let PIDCREATEDTM(strPIDCREATEDTM)
mPIDCREATEDTM = strPIDCREATEDTM
End Property
Public Property Get PIDLASTSAVEDTM
PIDLASTSAVEDTM = mPIDLASTSAVEDTM
End Property
Public Property Let PIDLASTSAVEDTM(strPIDLASTSAVEDTM)
mPIDLASTSAVEDTM = strPIDLASTSAVEDTM
End Property
Public Property Get PIDPAGECOUNT
PIDPAGECOUNT = mPIDPAGECOUNT
End Property
Public Property Let PIDPAGECOUNT(strPIDPAGECOUNT)
mPIDPAGECOUNT = strPIDPAGECOUNT
End Property
Public Property Get PIDWORDCOUNT
PIDWORDCOUNT = mPIDWORDCOUNT
End Property
Public Property Let PIDWORDCOUNT(strPIDWORDCOUNT)
mPIDWORDCOUNT = strPIDWORDCOUNT
End Property
Public Property Get PIDCHARCOUNT
PIDCHARCOUNT = mPIDCHARCOUNT
End Property
Public Property Let PIDCHARCOUNT(strPIDCHARCOUNT)
mPIDCHARCOUNT = strPIDCHARCOUNT
End Property
Public Property Get PIDAPPNAME
PIDAPPNAME = mPIDAPPNAME
End Property
Public Property Let PIDAPPNAME(strPIDAPPNAME)
mPIDAPPNAME = strPIDAPPNAME
End Property
Public Property Get PIDSECURITY
PIDSECURITY = mPIDSECURITY
End Property
Public Property Let PIDSECURITY(strPIDSECURITY)
mPIDSECURITY = strPIDSECURITY
End Property
Private Sub Class_Initialize
'Anweisungen
End Sub
' -----------------------------------------------------------------
Public Function GetSummeryInfo()
Dim SummeryInfo
Set SummeryInfo = objDatabase.SummaryInformation(15)
mPIDCODEPAGE = SummeryInfo.Property(1)
mPIDTITLE = SummeryInfo.Property(2)
mPIDSUBJECT = SummeryInfo.Property(3)
mPIDAUTHOR = SummeryInfo.Property(4)
mPIDKEYWORDS = SummeryInfo.Property(5)
mPIDCOMMENTS = SummeryInfo.Property(6)
mPIDTEMPLATE = SummeryInfo.Property(7)
mPIDREVNUMBER = SummeryInfo.Property(9)
' -------------------
mPIDLASTPRINTED = SummeryInfo.Property(11)
mPIDCREATEDTM = SummeryInfo.Property(12)
mPIDLASTSAVEDTM = SummeryInfo.Property(13)
mPIDPAGECOUNT = SummeryInfo.Property(14)
mPIDWORDCOUNT = SummeryInfo.Property(15)
mPIDAPPNAME = SummeryInfo.Property(18)
mPIDSECURITY = SummeryInfo.Property(19)
Set SummeryInfo = Nothing
End Function
' -----------------------------------------------------------------
Public Function ExecuteSummeryInformation()
Dim SummeryInfo
Set SummeryInfo = objDatabase.SummaryInformation(15)
SummeryInfo.Property(1) = mPIDCODEPAGE
SummeryInfo.Property(2) = mPIDTITLE
SummeryInfo.Property(3) = mPIDSUBJECT
SummeryInfo.Property(4) = mPIDAUTHOR
SummeryInfo.Property(5) = mPIDKEYWORDS
SummeryInfo.Property(6) = mPIDCOMMENTS
SummeryInfo.Property(7) = mPIDTEMPLATE
SummeryInfo.Property(9) = mPIDREVNUMBER
' -------------------
SummeryInfo.Property(11) = mPIDLASTPRINTED
SummeryInfo.Property(12) = mPIDCREATEDTM
SummeryInfo.Property(13) = mPIDLASTSAVEDTM
SummeryInfo.Property(14) = mPIDPAGECOUNT
SummeryInfo.Property(15) = mPIDWORDCOUNT
SummeryInfo.Property(18) = mPIDAPPNAME
SummeryInfo.Property(19) = mPIDSECURITY
SummeryInfo.Persist
objDatabase.Commit()
Set SummeryInfo = Nothing
End Function
' -----------------------------------------------------------------
Public Function InitializeSummeryInformation()
GetSummeryInfo
If mPIDCODEPAGE = "" Then mPIDCODEPAGE = 1252
If mPIDTITLE = "" Then mPIDTITLE = "Windows Installer Database"
If mPIDSUBJECT = "" Then mPIDSUBJECT = ApplicationInfo.pProductName & " " & ApplicationInfo.pProductVersion
If mPIDAUTHOR = "" Then mPIDAUTHOR = "SimplyCleverMSI"
If mPIDKEYWORDS = "" Then mPIDKEYWORDS = "Windows Installer, MSI"
If mPIDCOMMENTS = "" Then mPIDCOMMENTS = "This installer database contains the logic and data required to install this application."
If mPIDTEMPLATE = "" Then mPIDTEMPLATE = ApplicationInfo.pArchitecture & ";" & ApplicationInfo.pProductLanguage
If mPIDREVNUMBER = "" Then mPIDREVNUMBER = GenerateGUID
' -------------------
If mPIDLASTPRINTED = "" Then mPIDLASTPRINTED = Now
If mPIDCREATEDTM = "" Then mPIDCREATEDTM = Now
If mPIDLASTSAVEDTM = "" Then mPIDLASTSAVEDTM = Now
If mPIDPAGECOUNT = "" Then mPIDPAGECOUNT = 500
If mPIDWORDCOUNT = "" Then mPIDWORDCOUNT = 0
If mPIDAPPNAME = "" Then mPIDAPPNAME = "generated from SimplyCleverMSI"
If mPIDSECURITY = "" Then mPIDSECURITY = 0
End Function
' -----------------------------------------------------------------
Private Function GenerateGUID()
Dim objGuid
Set objGuid = CreateObject("Scriptlet.Typelib")
GenerateGUID = Left(objGuid.Guid, 38)
Set objGuid = Nothing
End Function
' -----------------------------------------------------------------
Private Sub Class_Terminate()
'Anweisungen
End Sub
End Class
' ---------------------------------------------------------------------