Функция MsiGetProductInfoFromScriptA (msi.h)
Функция MsiGetProductInfoFromScript возвращает сведения о продукте для файла скрипта установщика Windows.
Синтаксис
UINT MsiGetProductInfoFromScriptA(
[in] LPCSTR szScriptFile,
[out] LPSTR lpProductBuf39,
[out] LANGID *plgidLanguage,
[out] LPDWORD pdwVersion,
[out] LPSTR lpNameBuf,
[in, out] LPDWORD pcchNameBuf,
[out] LPSTR lpPackageBuf,
[in, out] LPDWORD pcchPackageBuf
);
Параметры
[in] szScriptFile
Строка, завершающаяся значением NULL, указывающая полный путь к файлу скрипта. Файл скрипта — это скрипт объявления, созданный путем вызова MsiAdvertiseProduct или MsiAdvertiseProductEx.
[out] lpProductBuf39
Указывает на буфер, который получает код продукта. Буфер должен содержать 39 символов. Первые 38 символов предназначены для GUID кода продукта, а последний — для завершающего символа NULL.
[out] plgidLanguage
Указывает на переменную, которая получает язык продукта.
[out] pdwVersion
Указывает на буфер, который получает версию продукта.
[out] lpNameBuf
Указывает на буфер, получающий название продукта. Буфер содержит завершающий символ NULL.
[in, out] pcchNameBuf
Указывает на переменную, указывающую размер буфера в символах, на который указывает параметр lpNameBuf . Этот размер должен включать завершающий символ NULL. При возврате функции эта переменная содержит длину строки, хранящейся в буфере. Возвращаемое число не включает завершающий символ NULL. Если буфер недостаточно велик, функция возвращает ERROR_MORE_DATA, а переменная содержит размер строки в символах без подсчета нулевого символа.
[out] lpPackageBuf
Указывает на буфер, который получает имя пакета. Буфер содержит завершающий символ NULL.
[in, out] pcchPackageBuf
Указывает на переменную, указывающую размер буфера в символах, на который указывает параметр lpPackageNameBuf . Этот размер должен включать завершающий символ NULL. При возврате функции эта переменная содержит длину строки, хранящейся в буфере. Возвращаемое число не включает завершающий символ NULL. Если буфер недостаточно велик, функция возвращает ERROR_MORE_DATA, а переменная содержит размер строки в символах без подсчета нулевого символа.
Возвращаемое значение
Значение | Значение |
---|---|
|
Функция успешно завершена. |
|
В функцию передан недопустимый аргумент. |
|
Буфер был слишком мал для хранения всего значения. |
|
Не удалось получить сведения о скрипте. |
|
Эта функция доступна только в Windows 2000 и Windows XP. |
Комментарии
Примечание
Заголовок msi.h определяет MsiGetProductInfoFromScript в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Установщик Windows 5.0 в Windows Server 2012, Windows 8, Windows Server 2008 R2 или Windows 7. Установщик Windows 4.0 или установщик Windows 4.5 в Windows Server 2008 или Windows Vista. Установщик Windows в Windows Server 2003 или Windows XP. Сведения о минимальном пакете обновления Windows, необходимом для версии установщика Windows, см. в разделе Требования к установщику Windows Run-Time. |
Целевая платформа | Windows |
Header | msi.h |
Библиотека | Msi.lib |
DLL | Msi.dll |