MsiRecordGetStringA-Funktion (msiquery.h)
Die MsiRecordGetString-Funktion gibt den Zeichenfolgenwert eines Datensatzfelds zurück.
Syntax
UINT MsiRecordGetStringA(
[in] MSIHANDLE hRecord,
[in] UINT iField,
[out] LPSTR szValueBuf,
[in, out] LPDWORD pcchValueBuf
);
Parameter
[in] hRecord
Handle mit dem Datensatz.
[in] iField
Gibt das angeforderte Feld an.
[out] szValueBuf
Zeiger auf den Puffer, der die NULL-Zeichenfolge empfängt, die den Wert des Datensatzfelds enthält. Versuchen Sie nicht, die Größe des Puffers zu bestimmen, indem Sie null (value=0) für szValueBuf übergeben. Sie können die Größe des Puffers abrufen, indem Sie eine leere Zeichenfolge übergeben (z. B. "). Die Funktion gibt dann ERROR_MORE_DATA zurück, und pcchValueBuf enthält die erforderliche Puffergröße in TCHARs, ohne das beendende NULL-Zeichen. Bei Rückgabe von ERROR_SUCCESS enthält pcchValueBuf die Anzahl der TCHARs , die in den Puffer geschrieben wurden, ohne das beendende NULL-Zeichen.
[in, out] pcchValueBuf
Zeiger auf die Variable, die die Größe des Puffers in TCHARs angibt, auf den die Variable szValueBuf verweist. Wenn die Funktion ERROR_SUCCESS zurückgibt, enthält diese Variable die Größe der in szValueBuf kopierten Daten, ohne das beendende NULL-Zeichen. Wenn szValueBuf nicht groß genug ist, gibt die Funktion ERROR_MORE_DATA zurück und speichert die erforderliche Größe ohne das beendende NULL-Zeichen in der Variablen, auf die von pcchValueBuf verwiesen wird.
Rückgabewert
Die MsiRecordGetString-Funktion gibt einen der folgenden Werte zurück:
Hinweise
Wenn ERROR_MORE_DATA zurückgegeben wird, gibt der Parameter, der ein Zeiger ist, die Größe des Puffers an, der zum Halten der Zeichenfolge erforderlich ist. Wenn ERROR_SUCCESS zurückgegeben wird, wird die Anzahl der Zeichen angegeben, die in den Zeichenfolgenpuffer geschrieben werden. Um die Größe des Puffers abzurufen, übergeben Sie die Adresse eines Puffers mit 1 Zeichen als szValueBuf , und geben Sie die Größe des Puffers mit pcchValueBuf als 0 an. Dadurch wird sichergestellt, dass kein von der Funktion zurückgegebener Zeichenfolgenwert in den Puffer passt. Versuchen Sie nicht, die Größe des Puffers zu bestimmen, indem Sie null (value=0) übergeben.
Hinweis
Der msiquery.h-Header definiert MsiRecordGetString als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante 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
Anforderung | Wert |
---|---|
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. |
Zielplattform | Windows |
Kopfzeile | msiquery.h |
Bibliothek | Msi.lib |
DLL | Msi.dll |
Weitere Informationen
Übergeben von Null als Argument von Windows Installer-Funktionen