2013-06-05 7 views
0

Je travaille sur un installateur InstallShield 2010 plus ancien. Il met DLLWRAP référencé à partir de programfiles \ installshield. Il existe deux actions personnalisées qui appellent les fonctions DLLWrapCleanup après l'installation finialize et DLLWrapStartup après SetupCompleteSuccess. Est-ce que quelqu'un peut expliquer ce que c'est et ce qu'il fait - ou même si c'est nécessaire? Merci.Qu'est-ce que DLLWrap.dll utilisé dans InstallShield?

Répondre

2

Comme Installsheild Help décrit ici: il s'agit d'une DLL auxiliaire pour les actions personnalisées à partir d'une DLL standard.

Si vous modifiez vos actions personnalisées de "standard" à "msi dll", vous pouvez supprimer les actions DLL et dllwrap de votre ISM.

Stefan Krueger describes the differences here. Une "DLL MSI" est une DLL qui exporte une fonction correspondant au prototype défini dans la documentation MSI. C'est le seul type de DLL que Windows Istaller peut utiliser directement en tant qu'action personnalisée.

Une "DLL standard" peut avoir (pratiquement) n'importe quel prototype. InstallShield ajoute un wrapper qui ne fait que Windows Installer l'interface DLL MSI et convertit tous les paramètres supplémentaires en propriétés. Donc essentiellement votre action cuatom appelle une DLL (fournie par InstallShield) qui appelle une autre DLL (votre DLL standard). Personnellement, lorsque j'ai commencé à le faire il y a quelques années, j'ai utilisé des DLL standard. Quand j'ai appris la différence je suis passé à l'aide de DLL MSI.

Questions connexes