Share via


Funzione MsiDatabaseImportA (msiquery.h)

La funzione MsiDatabaseImport importa un file di archivio di testo del programma di installazione in una tabella di database aperta.

Sintassi

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

Parametri

[in] hDatabase

Handle per il database ottenuto da MsiOpenDatabase.

[in] szFolderPath

Specifica il percorso della cartella che contiene i file di archivio.

[in] szFileName

Specifica il nome del file da importare.

Valore restituito

La funzione MsiDatabaseImport restituisce uno dei valori seguenti:

Commenti

Quando si usa la funzione MsiDatabaseImport per importare una tabella di archivio di testo denominata _SummaryInformation in un database del programma di installazione, si scrive il flusso "05SummaryInformation". Questo flusso contiene proprietà standard che possono essere visualizzate usando Esplora risorse e sono definite da COM. Le righe della tabella vengono scritte nel flusso di proprietà come coppie di numeri ID proprietà e valori di dati corrispondenti. Vedere Summary Information Stream Property Set.See Summary Information Stream Property Set. Data e ora in _SummaryInformation sono nel formato: AAAA/MM/GG hh::mm::ss. Ad esempio, 1999/03/22 15:25:45. Se la tabella contiene flussi binari, il nome del flusso si trova nel campo dati e il flusso effettivo viene recuperato da un file di tale nome in una sottocartella con lo stesso nome della tabella.

I file di archivio di testo esportati da un database di MsiDatabaseExport sono destinati all'uso con i sistemi di controllo della versione e non devono essere usati come mezzo per la modifica dei dati. Usare le funzioni e gli strumenti dell'API di database progettati a tale scopo. Si noti che i caratteri di controllo nei file di archivio di testo vengono convertiti per evitare conflitti con delimitatori di file. Se un file di archivio di testo contiene dati non ASCII, viene stampato con la tabella codici dei dati e può essere importato solo in un database di tale tabella codici esatta o in un database indipendente. I database neutrali vengono impostati sulla tabella codici del file importato. Un database può essere impostato in modo incondizionato su una determinata tabella codici importando una pseudo tabella denominata: _ForceCodepage. Il formato di un file di questo tipo è: due righe vuote, seguite da una riga che contiene la tabella codici numerica, un delimitatore di tabulazioni e la stringa esatta: _ForceCodepage

Questa funzione non può essere chiamata da azioni personalizzate. Una chiamata a questa funzione da un'azione personalizzata causa l'esito negativo della funzione.

Se la funzione ha esito negativo, è possibile ottenere informazioni estese sull'errore usando MsiGetLastErrorRecord.

Nota

L'intestazione msiquery.h definisce MsiDatabaseImport come alias che seleziona automaticamente la versione ANSI o Unicode di questa funzione in base alla definizione della costante del preprocessore UNICODE. La combinazione dell'utilizzo dell'alias indipendente dalla codifica con il codice che non è indipendente dalla codifica può causare mancate corrispondenze che generano errori di compilazione o di runtime. Per altre informazioni, vedere Convenzioni per i prototipi di funzioni.

Requisiti

   
Client minimo supportato Windows Installer 5.0 in Windows Server 2012, Windows 8, Windows Server 2008 R2 o Windows 7. Windows Installer 4.0 o Windows Installer 4.5 in Windows Server 2008 o Windows Vista. Windows Installer in Windows Server 2003 o Windows XP
Piattaforma di destinazione Windows
Intestazione msiquery.h
Libreria Msi.lib
DLL Msi.dll

Vedi anche

Funzioni di gestione del database

File di archivio di testo