Les DLL COM ne doivent pas être auto-enregistrées lors de l'installation en raison de problèmes de fiabilité. Au lieu de cela, les informations d'enregistrement COM doivent être extraites et compilées dans la base de données MSI. Ce processus est facilité par l'outil heat.exe de WiX.
Pour extraire les données du registre COM de votre DLL, exécutez heat.exe avec la commande suivante :
heat.exe file YourFileName.ocx -o YourFileName.wxs
Cela générera un fichier source WiX contenant les données de registre nécessaires.
Les données de registre extraites par heat.exe peuvent être incluses dans votre fichier source WiX principal. Vous pouvez trouver des instructions sur la façon de procéder dans l'article lié ci-dessous :
Les dépendances manquantes peuvent empêcher la réussite de l'enregistrement COM. Utilisez Dependency Walker ou le nouvel outil Dependencies pour identifier les dépendances manquantes. Assurez-vous que ces dépendances sont disponibles lors de l'installation, soit localement, soit dans le chemin.
Heat.exe ne traite actuellement pas correctement les binaires COM 64 bits. Si vous travaillez avec un composant 64 bits, vous devrez peut-être utiliser le pack d'extension WiX (non gratuit) ou tenter de vous auto-enregistrer comme décrit ici.
L'enregistrement COM doit être effectué via WiX plutôt que par des actions personnalisées ou des fichiers batch. En utilisant heat.exe pour extraire les données du registre COM et en les incorporant dans votre source WiX, vous pouvez garantir un enregistrement COM fiable et efficace lors de l'installation.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!