библиотеки 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.