Поделиться через


Функция MsiProcessAdvertiseScriptA (msi.h)

Функция MsiProcessAdvertiseScript обрабатывает файл скрипта объявления в указанных расположениях.

Синтаксис

UINT MsiProcessAdvertiseScriptA(
  [in] LPCSTR szScriptFile,
  [in] LPCSTR szIconFolder,
  [in] HKEY   hRegData,
  [in] BOOL   fShortcuts,
  [in] BOOL   fRemoveItems
);

Параметры

[in] szScriptFile

Полный путь к файлу скрипта, созданному msiAdvertiseProduct или MsiAdvertiseProductEx.

[in] szIconFolder

Необязательный путь к папке, в которой находятся файлы объявленных значков и файлы преобразования. Если этот параметр имеет значение NULL, файлы значков или преобразования не записываются.

[in] hRegData

Раздел реестра, в котором записываются данные реестра. Если этот параметр имеет значение NULL, установщик записывает данные реестра в соответствующий раздел в зависимости от того, является ли объявление для каждого пользователя или компьютера. Если этот параметр не равен NULL, скрипт запишет данные реестра в указанном разделе реестра, а не в обычном расположении. В этом случае приложение не будет объявлено пользователю.

[in] fShortcuts

Значение TRUE , если необходимо создать ярлыки. Если shGetSpecialFolderLocation возвращает специальную папку, она будет содержать ярлыки.

[in] fRemoveItems

Значение TRUE , если указанные элементы должны быть удалены, а не созданы.

Возвращаемое значение

Значение Значение
ERROR_SUCCESS
Функция успешно завершена.
ERROR_ACCESS_DENIED
Процесс вызова не выполнялся под учетной записью LocalSystem.
Ошибка, связанная с действием
См . коды ошибок.
Ошибка инициализации
Произошла ошибка, связанная с инициализацией.
ERROR_CALL_NOT_IMPLEMENTED
Эта функция недоступна для этой платформы.
 
 

Комментарии

Процесс, вызывающий эту функцию, должен выполняться под учетной записью LocalSystem. Чтобы объявить приложение для установки для каждого пользователя целевому пользователю, поток, вызывающий эту функцию, должен олицетворить целевого пользователя. Если поток, вызывающий эту функцию, не олицетворяет целевого пользователя, приложение объявляется всем пользователям для установки с повышенными привилегиями.

Примечание

Заголовок msi.h определяет MsiProcessAdvertiseScript в качестве псевдонима, который автоматически выбирает версию 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