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


библиотеки Dynamic-Link (установщик Windows)

Настраиваемое действие может вызывать функцию, определенную в библиотеке динамических ссылок (DLL), написанной на C или C++. Библиотека DLL может существовать в виде файла, установленного во время текущей установки или в качестве временного двоичного потока, исходя из двоичной таблицы базы данных установки.

Обратите внимание, что все вызываемые функции, включая пользовательские действия в библиотеках DLL, должны указывать соглашение о вызове __stdcall. Например, чтобы вызвать CustomAction, используйте следующее.

#include <windows.h>
#include <msi.h>
#include <Msiquery.h>
#pragma comment(lib, "msi.lib")

UINT __stdcall CustomAction(MSIHANDLE hInstall)

Дополнительные сведения см. в доступ к текущему сеансу установщика из пользовательского действия

Следующие типы пользовательских действий вызывают библиотеку динамической компоновки.

Настраиваемый тип действия Описание
тип пользовательского действия 1 DLL-файл, хранящийся в потоке двоичной таблицы.
тип пользовательского действия 17 DLL-файл, установленный с продуктом.

 

Заметка

Чтобы использовать COM, необходимо вызвать CoInitializeEx в пользовательском действии. Не покидайте работу, если вы обнаружите, что поток уже инициализирован. Например, поток инициализируется в установке на компьютер, но не в установке для каждого пользователя.

 

В сводном списке всех пользовательских типов действий сводка всех типов пользовательских действий и их кодирование в таблице CustomAction.