Partager via


Spécification de l’ordre d’auto-inscription

Notez que vous ne pouvez pas spécifier l’ordre dans lequel le programme d’installation inscrit ou annule l’inscription automatique des DLL à l’aide des actions SelfRegModules et SelfUnRegModules. Ces actions inscrivent tous les modules répertoriés dans la table SelfReg. Le programme d’installation n’inscrit pas automatiquement .exe fichiers.

Pour spécifier l’ordre dans lequel le programme d’installation inscrit ou annule l’inscription des modules, vous devez utiliser deux actions personnalisées pour chaque module. Une action personnalisée pour DllRegisterServer et une seconde pour DllUnregisterServer. Ces actions personnalisées doivent ensuite être créées dans la table InstallExecuteSequence au point de la séquence où la DLL doit être inscrite ou désinscrire.

L’exemple suivant montre comment créer la base de données pour planifier l’auto-inscription d’une DLL à un point particulier de la séquence d’actions.

Table File (partielle)

Fichier Component_ FileName Séquence
mydll myComponent Mydll.dll 13

 

Table Component (partielle)

Composant ComponentId Directory_ KeyPath
myComponent {un GUID} myFolder mydll

 

Table Directory

Répertoire Directory_Parent DefaultDir
TARGETDIR SourceDir
myFolder TARGETDIR myFolder| Mon dossier

 

Table CustomAction

Action Type Source Cible
mydllREG 3170 myFolder "[SystemFolder]msiexec" /y "[#mydll]"
mydllUNREG 3170 myFolder "[SystemFolder]msiexec" /z "[#mydll]"

 

Table InstallExecuteSequence (partielle)

Action Condition Séquence
SelfUnregModules 2 200
mydllUNREG $myComponent=2 2201
RemoveFiles 3 500
InstallFiles 4000
SelfRegModules 6500
mydllREG $myComponent>2 6501