Installer.OpenDatabase-Methode

Die OpenDatabase-Methode des Installer-Objekts öffnet eine vorhandene Datenbank oder erstellt eine neue Datenbank, die ein Datenbankobjekt zurückgibt. Es generiert einen Fehler, wenn das Database-Objekt nicht erfolgreich erstellt und geöffnet werden kann.

Syntax

Installer.OpenDatabase(
  name,
  openMode
)

Parameter

name

Erforderliche Zeichenfolge, die den Pfadnamen der Datenbank enthält. Wenn eine leere Zeichenfolge angegeben wird, wird eine temporäre Datenbank erstellt, die nicht beibehalten wird.

Openmode

Ein Parameter aus der folgenden Liste oder eine Zeichenfolge, die den Pfadnamen der neuen Ausgabedatenbankdatei enthält, in die beim Commit geschrieben werden soll.

Parameter Bedeutung
msiOpenDatabaseModeReadOnly
0
Öffnet eine Datenbank schreibgeschützt, keine dauerhaften Änderungen.
msiOpenDatabaseModeTransact
1
Öffnet eine Datenbank mit Lese-/Schreibzugriff im Transaktionsmodus.
msiOpenDatabaseModeDirect
2
Öffnet eine datenbank direkte Lese-/Schreibzugriff ohne Transaktion.
msiOpenDatabaseModeCreate
3
Erstellt eine neue Datenbank mit Lese-/Schreibzugriff im Transaktionsmodus.
msiOpenDatabaseModeCreateDirect
4
Erstellt eine neue Datenbank, einen direkten Modus mit Lese-/Schreibzugriff.
msiOpenDatabaseModeListScript
5
Öffnet eine Datenbank zum Anzeigen von Skriptdateien, z. B. die von der CreateAdvertiseScript-Methode generierten Dateien.
msiOpenDatabaseModePatchFile
32
Fügt dieses Kennzeichen hinzu, um eine Patchdatei anzugeben.

 

Rückgabewert

Ein Datenbankobjekt , das die vorhandene oder neue Installationsdatenbank darstellt, die geöffnet wurde.

Bemerkungen

Wenn eine Datenbank als Ausgabe einer anderen Datenbank geöffnet wird, ist der Zusammenfassungsinformationsstrom der Ausgabedatenbank tatsächlich eine schreibgeschützte Spiegelung der ursprünglichen Datenbank und kann daher nicht geändert werden. Darüber hinaus wird sie nicht mit der Datenbank beibehalten. Um die Zusammenfassungsinformationen für die Ausgabedatenbank zu erstellen oder zu ändern, muss sie geschlossen und erneut geöffnet werden.

Wenn Sie Änderungen an einer Datenbank vornehmen und speichern möchten, öffnen Sie zuerst die Datenbank in der Transaktion (msiOpenDatabaseModeTransact), erstellen (msiOpenDatabaseModeCreate Oder msiOpenDatabaseModeCreateDirect) oder direkten Modus (msiOpenDatabaseModeDirect). Rufen Sie nach dem Vornehmen der Änderungen immer die Commit-Methode auf, bevor Sie das Datenbankhandle schließen. Die Commit-Methode löscht alle Puffer.

Rufen Sie immer die Commit-Methode für eine Datenbank auf, die im direkten Modus (msiOpenDatabaseModeDirect oder msiOpenDatabaseModeCreateDirect) geöffnet wurde, bevor Sie die Datenbank schließen. Fehler bei dieser Vorgehensweise kann die Datenbank beschädigen.

Da die OpenDatabase-Methode den Datenbankzugriff initiiert, kann sie nicht mit einer ausgeführten Installation verwendet werden.

Wenn die Methode fehlschlägt, können Sie erweiterte Fehlerinformationen mithilfe der LastErrorRecord-Methode abrufen.

Requirements (Anforderungen)

Anforderung Wert
Version
Windows Installer 5.0 auf Windows Server 2012, Windows 8, Windows Server 2008 R2 oder Windows 7. Windows Installer 4.0 oder Windows Installer 4.5 auf Windows Server 2008 oder Windows Vista. Windows Installer auf Windows Server 2003 oder Windows XP
DLL
Msi.dll
IID
IID_IInstaller wird als 000C1090-0000-0000-C000-0000000000046 definiert.