Поделиться через


Метод Installer.LastErrorRecord

Метод LastErrorRecord объекта Installer возвращает объект Record , содержащий параметры ошибки для последней ошибки из функции, создавшей запись ошибки.

Синтаксис

Installer.LastErrorRecord()

Параметры

Этот метод не имеет параметров.

Возвращаемое значение

Этот метод не возвращает значение.

Комментарии

Объект Record сбрасывается после выполнения этой функции любой функции, которая создает запись об ошибке.

Только следующие назначенные функции создают запись об ошибке:

В следующем примере в VBScript используется вызов OpenDatabase , чтобы показать, как получить расширенные сведения об ошибке из одного из методов или свойств, поддерживающих метод LastErrorRecord . В этом примере создается сообщение об ошибке при сбое метода OpenDatabase . Объект Err используется для определения того, обнаружена ли ошибка.

Const msiOpenDatabaseModeReadOnly     = 0

On Error Resume Next ' defer error handling

Dim installer
Set installer = CreateObject("WindowsInstaller.Installer")

' attempt to open the non-existent MSI database
Dim database
Set database = installer.OpenDatabase("c:\nonexistent.msi", msiOpenDatabaseModeReadOnly)

' test for error
If Err.Number <> 0 Then
    Dim message, errorRec
    message = Err.Source & " " & Hex(Err.Number) & ": " & Err.Description
    If Not installer Is Nothing Then
        ' try to obtain extended error info
        Set errorRec = installer.LastErrorRecord
        If Not errorRec Is Nothing Then message = message & vbNewLine & errorRec.FormatText
    End If

    MsgBox message

    ' PLACE ADDITIONAL SCRIPTING CODE HERE TO LOG AND/OR DISPLAY THE MESSAGE AND
    ' DETERMINE WHETHER TO CONTINUE PROCESSING ANYTHING ELSE
End If

Требования

Требование Значение
Версия
Установщик Windows 5.0 в Windows Server 2012, Windows 8, Windows Server 2008 R2 или Windows 7. Установщик Windows 4.0 или установщик Windows 4.5 в Windows Server 2008 или Windows Vista. Установщик Windows в Windows Server 2003 или Windows XP
DLL
Msi.dll
IID
IID_IInstaller определяется как 000C1090-0000-0000-C000-0000000000046