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 |