Activation de contrôles ActiveX

GeoTrouvePas

XLDnaute Impliqué
Bonjour tout le monde,

Je viens de développer une petite application qui nécessite l'activation de plusieurs DLL et contrôles ActiveX dès le démarrage. Dans la mesure où deux contrôles ActiveX ne sont pas systématiquement présents sur tous les postes, j'en ai mis une copie sur le réseau (lecteur P:\ dans l'exemple ci - dessous) et lorsqu'ils ne sont pas présents sur le poste, ma boucle les enregistre avec "regsvr32" puis les active.

Mon soucis est que ça ne fonctionne pas sur tous les postes et je n'arrive pas à savoir d'où vient le problème. Voici un "extrait" de ma boucle :

Code:
Sub ActiverReference()
   If Not ReferenceActive("MSComCtl2") Then
      If FichierExistant("C:\WINNT\system32\MSCOMCT2.OCX") Then
         ThisWorkbook.VBProject.References.AddFromFile "C:\WINNT\system32\MSCOMCT2.OCX"
      Else
         Shell ("regsvr32 /s" & "P:\References\MSCOMCT2.OCX")
         ThisWorkbook.VBProject.References.AddFromFile "P:\References\MSCOMCT2.OCX"
      End If
   End If
End sub

A noter que la fonction FichierExistant teste si un fichier existe et ReferenceActive teste si une référence est déjà activée (je sais ça paraît évident mais je préfère le préciser :))

Auriez vous une idée sur la source de mon problème ?

Je vous remercie d'avance.
 

Discussions similaires

Statistiques des forums

Discussions
312 377
Messages
2 087 743
Membres
103 657
dernier inscrit
chaval