Freigeben über


MsiDatabaseImportA-Funktion (msiquery.h)

Die MsiDatabaseImport-Funktion importiert eine Installer-Textarchivdatei in eine geöffnete Datenbanktabelle.

Syntax

UINT MsiDatabaseImportA(
  [in] MSIHANDLE hDatabase,
  [in] LPCSTR    szFolderPath,
  [in] LPCSTR    szFileName
);

Parameter

[in] hDatabase

Handle mit der Datenbank, die aus MsiOpenDatabase abgerufen wurde.

[in] szFolderPath

Gibt den Pfad zu dem Ordner an, der Archivdateien enthält.

[in] szFileName

Gibt den Namen der zu importierenden Datei an.

Rückgabewert

Die MsiDatabaseImport-Funktion gibt einen der folgenden Werte zurück:

Hinweise

Wenn Sie die MsiDatabaseImport-Funktion verwenden, um eine Textarchivtabelle namens _SummaryInformation in eine Installationsdatenbank zu importieren, schreiben Sie den Stream "05SummaryInformation". Dieser Stream enthält Standardeigenschaften, die mithilfe von Windows Explorer angezeigt werden können und von COM definiert werden. Die Zeilen der Tabelle werden als Paare von Eigenschafts-ID-Nummern und entsprechenden Datenwerten in den Eigenschaftenstream geschrieben. Weitere Informationen finden Sie unter Eigenschaftensatz des Zusammenfassungsinformationsdatenstroms. Datum und Uhrzeit in _SummaryInformation haben das Format JJJJ/MM/TT hh::mm::ss. Zum Beispiel 1999/03/22 15:25:45. Wenn die Tabelle Binärdatenströme enthält, befindet sich der Name des Datenstroms im Datenfeld, und der tatsächliche Stream wird aus einer Datei mit diesem Namen in einem Unterordner mit demselben Namen wie die Tabelle abgerufen.

Textarchivdateien, die von MsiDatabaseExport aus einer Datenbank exportiert werden, sind für die Verwendung mit Versionskontrollsystemen vorgesehen und nicht für die Verwendung als Mittel zum Bearbeiten von Daten vorgesehen. Verwenden Sie die für diesen Zweck entwickelten Datenbank-API-Funktionen und -Tools. Beachten Sie, dass Steuerzeichen in Textarchivdateien übersetzt werden, um Konflikte mit Dateitrennzeichen zu vermeiden. Wenn eine Textarchivdatei Nicht-ASCII-Daten enthält, wird sie mit der Codepage der Daten gestempelt und kann nur in eine Datenbank mit dieser genauen Codepage oder in eine neutrale Datenbank importiert werden. Neutrale Datenbanken werden auf die Codepage der importierten Datei festgelegt. Eine Datenbank kann bedingungslos auf eine bestimmte Codepage festgelegt werden, indem eine Pseudotabelle namens importiert wird: _ForceCodepage. Das Format einer solchen Datei ist: Zwei leere Zeilen, gefolgt von einer Zeile, die die numerische Codepage, ein Tabstopptrennzeichen und die genaue Zeichenfolge enthält: _ForceCodepage

Diese Funktion kann nicht über benutzerdefinierte Aktionen aufgerufen werden. Ein Aufruf dieser Funktion aus einer benutzerdefinierten Aktion führt dazu, dass die Funktion fehlschlägt.

Wenn die Funktion fehlschlägt, können Sie erweiterte Fehlerinformationen mithilfe von MsiGetLastErrorRecord abrufen.

Hinweis

Der msiquery.h-Header definiert MsiDatabaseImport als Alias, der die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante automatisch auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows Installer 5.0 unter Windows Server 2012, Windows 8, Windows Server 2008 R2 oder Windows 7. Windows Installer 4.0 oder Windows Installer 4.5 unter Windows Server 2008 oder Windows Vista. Windows Installer unter Windows Server 2003 oder Windows XP
Zielplattform Windows
Kopfzeile msiquery.h
Bibliothek Msi.lib
DLL Msi.dll

Weitere Informationen

Datenbankverwaltungsfunktionen

Textdateien