cs_cedkat
Messages postés172Date d'inscriptionmardi 7 janvier 2003StatutMembreDernière intervention 3 juin 2011
-
24 mai 2007 à 08:24
ShareVB
Messages postés2676Date d'inscriptionvendredi 28 juin 2002StatutMembreDernière intervention13 janvier 2016
-
24 mai 2007 à 21:41
Bonjour,
Je doit faire une petite application qui doit utiliser un objet com fournit par une autre application. Le problème et que mon appli doit fonctionner même si l'autre application n'est pas installée et à forciori le serveur com non plus. Et je ne vois pas comment intancié l'objet com dans le cas où il est installer.
Donc problème rencontré :
- Détection de l'existance de l'objet com.
- Instanciation en dynamique de l'objet com.
cs_Willi
Messages postés2375Date d'inscriptionjeudi 12 juillet 2001StatutModérateurDernière intervention15 décembre 201822 24 mai 2007 à 20:09
Bonjour,
Si ton objet COM est enregistré et présent sur ton poste de dév, ajoute à ton projet une référence à celui .
Dans ton code dans un bloc Try...Catch instancie-le (mécanisme Early Binding)
Try
{
TonObjetCOM MyObjet = new TonObjetCOM()
.....
}
Catch
{
.....tu gère ton erreur
}
et si tu te retrouves dans le Catch alors il n'est pas enregistré ou présent sur le poste ou ton appli tourne.
ShareVB
Messages postés2676Date d'inscriptionvendredi 28 juin 2002StatutMembreDernière intervention13 janvier 201626 24 mai 2007 à 21:41
salut,
tu peux tester si la dll com est installée par Type.GetTypeFromCLSID ou par Type.GetTypeFromProgID...puis si tu récupère un Type, alors tu peux utiliser Activator.CreateInstance pour en créer une instance...