2013-06-05 3 views
0

Я работаю над старым установщиком InstallShield 2010. Он помещает DLLWRAP, ссылаясь на programfiles \ installshield. Существует два пользовательских действия, которые вызывают функции DLLWrapCleanup после завершения финализации и DLLWrapStartup после SetupCompleteSuccess.Что DLLWrap.dll что используется в InstallShield?

Может ли кто-нибудь объяснить, что это такое и что он делает - или даже если это необходимо? Благодарю.

ответ

2

Здесь описывается Installsheild Help: это вспомогательная DLL для пользовательских действий из стандартной DLL.

Если вы изменяете свои пользовательские действия с «стандартного» на «msi dll», вы можете удалить действия с DLL и dllwrap из своего ISM.

Stefan Krueger describes the differences here.

«MSI DLL» - это DLL, которая экспортирует функцию, которая соответствует прототипу, определенному в документации MSI. Это единственный тип DLL, который Windows Istaller может использовать непосредственно в качестве настраиваемого действия.

«Стандартная DLL» может иметь (практически) любой прототип. InstallShield добавляет оболочку вокруг нее, которая позволяет установщику Windows только интерфейс MSI DLL и переводит все дополнительные параметры в свойства. Таким образом, ваше действие cuatom вызывает DLL (предоставляемое InstallShield), которое вызывает другую DLL (стандартную DLL).

Лично, когда я начал делать это лет назад, я использовал стандартные библиотеки DLL. Когда я узнал разницу, я переключился на использование MSI DLL.

Смежные вопросы