Windows Installer API (SDK)
MoveFile Table
Referenz » MoveFile Table | Microsoft Docs
VBS class MoveFile
Class classMoveFileTable
Private mFileKey, mComponent, mSourceName, mDestName, mSourceFolder, mDestFolder, mOptions
Public Property Get pFileKey
pFileKey = mFileKey
End Property
Public Property Let pFileKey(strFileKey)
mFileKey = strFileKey
End Property
Public Property Get pComponent
pComponent = mComponent
End Property
Public Property Let pComponent(strComponent)
mComponent = strComponent
End Property
Public Property Get pSourceName
pSourceName = mSourceName
End Property
Public Property Let pSourceName(strSourceName)
mSourceName = strSourceName
End Property
Public Property Get pDestName
pDestName = mDestName
End Property
Public Property Let pDestName(strDestName)
mDestName = strDestName
End Property
Public Property Get pSourceFolder
pSourceFolder = mSourceFolder
End Property
Public Property Let pSourceFolder(strSourceFolder)
mSourceFolder = strSourceFolder
End Property
Public Property Get pDestFolder
pDestFolder = mDestFolder
End Property
Public Property Let pDestFolder(strDestFolder)
mDestFolder = strDestFolder
End Property
Public Property Get pOptions
pOptions = mOptions
End Property
Public Property Let pOptions(intOptions)
mOptions = intOptions
End Property
Private Sub Class_Initialize
'Anweisungen
End Sub
' -----------------------------------------------------------------
Public Function CreateTable()
Dim strSQL, objView
strSQL = "CREATE TABLE " & Chr(96) & "MoveFile" & Chr(96) & " (" & _
Chr(96) & "FileKey" & Chr(96) & " CHAR(72) NOT NULL, " & _
Chr(96) & "Component_" & Chr(96) & " CHAR(72) NOT NULL, " & _
Chr(96) & "SourceName" & Chr(96) & " CHAR(255) LOCALIZABLE, " & _
Chr(96) & "DestName" & Chr(96) & " CHAR(255) LOCALIZABLE, " & _
Chr(96) & "SourceFolder" & Chr(96) & " CHAR(72), " & _
Chr(96) & "DestFolder" & Chr(96) & " CHAR(72) NOT NULL, " & _
Chr(96) & "Options" & Chr(96) & " SHORT NOT NULL PRIMARY KEY " & _
Chr(96) & "FileKey" & Chr(96) & ")"
Set objView = objDatabase.OpenView(strSQL)
objView.Execute
objDatabase.Commit()
msiValidation.pTable = "MoveFile"
msiValidation.pColumn = "FileKey"
msiValidation.pNullable = "N"
msiValidation.pMinValue = Null
msiValidation.pMaxValue = Null
msiValidation.pKeyTable = ""
msiValidation.pKeyColumn = Null
msiValidation.pCategory = "Identifier"
msiValidation.pSet = ""
msiValidation.pDescription = "Primary key that uniquely identifies a particular MoveFile record."
msiValidation.ModifyValidationRecord
msiValidation.ResetValidationRecord
msiValidation.pTable = "MoveFile"
msiValidation.pColumn = "Component_"
msiValidation.pNullable = "N"
msiValidation.pMinValue = Null
msiValidation.pMaxValue = Null
msiValidation.pKeyTable = "Component"
msiValidation.pKeyColumn = 1
msiValidation.pCategory = "Identifier"
msiValidation.pSet = ""
msiValidation.pDescription = "If this component is not " & Chr(34) & "selected" & Chr(34) & _
" for installation or removal, no action will be taken on the associated MoveFile entry."
msiValidation.ModifyValidationRecord
msiValidation.ResetValidationRecord
msiValidation.pTable = "MoveFile"
msiValidation.pColumn = "SourceName"
msiValidation.pNullable = "Y"
msiValidation.pMinValue = Null
msiValidation.pMaxValue = Null
msiValidation.pKeyTable = ""
msiValidation.pKeyColumn = Null
msiValidation.pCategory = "WildCardFilename"
msiValidation.pSet = ""
msiValidation.pDescription = "Name of the source file(s) to be moved or copied. " & _
"Can contain the '*' or '?' wildcards."
msiValidation.ModifyValidationRecord
msiValidation.ResetValidationRecord
msiValidation.pTable = "MoveFile"
msiValidation.pColumn = "DestName"
msiValidation.pNullable = "Y"
msiValidation.pMinValue = Null
msiValidation.pMaxValue = Null
msiValidation.pKeyTable = ""
msiValidation.pKeyColumn = Null
msiValidation.pCategory = "Filename"
msiValidation.pSet = ""
msiValidation.pDescription = "Name to be given to the original file after it is moved or copied. " & _
"If blank, the destination file will be given the same name as the source file."
msiValidation.ModifyValidationRecord
msiValidation.ResetValidationRecord
msiValidation.pTable = "MoveFile"
msiValidation.pColumn = "SourceFolder"
msiValidation.pNullable = "Y"
msiValidation.pMinValue = Null
msiValidation.pMaxValue = Null
msiValidation.pKeyTable = ""
msiValidation.pKeyColumn = Null
msiValidation.pCategory = "Identifier"
msiValidation.pSet = ""
msiValidation.pDescription = "Name of a property whose value is assumed to resolve " & _
"to the full path to the source directory."
msiValidation.ModifyValidationRecord
msiValidation.ResetValidationRecord
msiValidation.pTable = "MoveFile"
msiValidation.pColumn = "DestFolder"
msiValidation.pNullable = "N"
msiValidation.pMinValue = Null
msiValidation.pMaxValue = Null
msiValidation.pKeyTable = ""
msiValidation.pKeyColumn = Null
msiValidation.pCategory = "Identifier"
msiValidation.pSet = ""
msiValidation.pDescription = "Name of a property whose value is assumed to resolve " & _
"to the full path to the destination directory."
msiValidation.ModifyValidationRecord
msiValidation.ResetValidationRecord
msiValidation.pTable = "MoveFile"
msiValidation.pColumn = "Options"
msiValidation.pNullable = "N"
msiValidation.pMinValue = 0
msiValidation.pMaxValue = 1
msiValidation.pKeyTable = ""
msiValidation.pKeyColumn = Null
msiValidation.pCategory = ""
msiValidation.pSet = ""
msiValidation.pDescription = "Integer value specifying the MoveFile operating " & _
"mode, one of imfoEnum."
msiValidation.ModifyValidationRecord
msiValidation.ResetValidationRecord
Set objView = Nothing
End Function
' -----------------------------------------------------------------
Public Function ModifyMoveFileRecord()
Dim strSQL, objView, objTableRow
strSQL = "SELECT * FROM MoveFile"
Set objView = objDatabase.OpenView(strSQL)
objView.Execute
Do
Set objTableRow = objView.Fetch
If objTableRow Is Nothing Then
Set objTableRow = objInstaller.CreateRecord(7)
objTableRow.StringData(1) = mFileKey
objTableRow.StringData(2) = mComponent
objTableRow.StringData(3) = mSourceName
objTableRow.StringData(4) = mDestName
objTableRow.StringData(5) = mSourceFolder
objTableRow.StringData(6) = mDestFolder
objTableRow.IntegerData(7) = mOptions
objView.Modify msiViewModifyAssign, objTableRow
Exit Do
End If
objTableRow.StringData(1) = mFileKey
objTableRow.StringData(2) = mComponent
objTableRow.StringData(3) = mSourceName
objTableRow.StringData(4) = mDestName
objTableRow.StringData(5) = mSourceFolder
objTableRow.StringData(6) = mDestFolder
objTableRow.IntegerData(7) = mOptions
objView.Modify msiViewModifyAssign, objTableRow
Loop
objDatabase.Commit()
objView.Close
Set objView = Nothing
End Function
' -----------------------------------------------------------------
Public Function DeleteMoveFileRecord()
Dim strSQL, objView, objTableRow
strSQL = "SELECT * FROM MoveFile"
Set objView = objDatabase.OpenView(strSQL)
objView.Execute
Do
Set objTableRow = objView.Fetch
If objTableRow Is Nothing Then Exit Do
If objTableRow.StringData(2) = mComponent Then _
objView.Modify msiViewModifyDelete, objTableRow
Loop
objDatabase.Commit()
objView.Close
Set objView = Nothing
End Function
' -----------------------------------------------------------------
Public Function DeleteAllRecords()
Dim strSQL, objView
strSQL = "DELETE FROM MoveFile"
Set objView = objDatabase.OpenView(strSQL)
objView.Execute
objDatabase.Commit()
objView.Close
Set objView = Nothing
End Function
' -----------------------------------------------------------------
Public Function DropTable()
Dim strSQL, objView
strSQL = "DROP TABLE MoveFile"
Set objView = objDatabase.OpenView(strSQL)
objView.Execute
objDatabase.Commit()
objView.Close
Set objView = Nothing
End Function
' -----------------------------------------------------------------
Private Sub Class_Terminate()
'Anweisungen
End Sub
End Class
' ---------------------------------------------------------------------