2010-05-31 7 views
0

J'ai un composant .net qui sera appelé par du code non géré. Je veux créer un programme d'installation pour le composant .net qui sera en une seule étape ...net installateur de composant pour COM interop

-install au répertoire souhaité -Générer le fichier TLB -run la commande regasm

Les déployeurs de ce composant ne pas avoir la connaissance du framework .net.

Des idées?

Merci.

+0

Est-ce que InstallSheild des autres installateurs ne supporte pas cela? – Arseny

Répondre

2

La bibliothèque de type ne doit être déployé si vous voulez que votre client d'utiliser eux-mêmes le composant quand ils écrivent leur propre code à l'aide votre serveur COM. C'est peu probable compte tenu de votre description de leurs compétences. Si nécessaire de toute façon, il vaut mieux simplement déployer le fichier .tlb au lieu de l'auto-générer lors de l'installation.

Votre client n'aura pas Regasm.exe sur leur machine, il est uniquement disponible dans le SDK Windows. Néanmoins, l'enregistrement de composants ComVisible est une fonctionnalité standard de MSI. Vous pouvez créer votre propre programme d'installation qui enregistre le composant avec un projet d'installation de Visual Studio. Définissez la propriété Register sur "vsdrpCOM".

0

Il a été un certain temps, mais je pense que quelque chose comme ça fonctionnerait:

Ajouter une classe Install.Installer à votre composant, la remplacer est Install et Uninstall méthodes et utiliser RegisterAssembly pour enregistrer le Assembly.
Créez ensuite un projet d'installation Visual Studio et ajoutez une action personnalisée pour exécuter vos méthodes d'installation au cours de l'installation.

En fait, voici un fil à discuter juste cela et il y a une réponse complète là-dedans: http://www.dotnet247.com/247reference/msgs/18/90440.aspx

Questions connexes