J'expérimente avec l'écriture de contrôles ActiveX et remarqué que je ne peux pas sembler créer un contrôle ActiveX dans Visual Basic (6.0) qui comporte des contrôles légèrement plus sophistiqués. Des contrôles simples comme des étiquettes, des boutons et des cases à cocher semblent fonctionner correctement, mais dès que j'essaie d'ajouter, par ex. un contrôle d'arborescence à mon formulaire, le contrôle ActiveX reste entièrement vide dès que je l'intègre dans une application hôte sur un autre ordinateur. Cela fonctionne bien sur ma boîte de développement cependant.Quelle est la source appropriée pour le composant Windows Common Controls 6.0 (MSCOMCTL.OCX)?
Tout en passant par l'Projets-> Composants (Ctrl + T) liste, je trouve deux bibliothèques qui contiennent apparemment un contrôle de l'arbre:
- Microsoft Windows Common Controls 5.0 (SP2)
- Microsoft Windows Common Controls 6.0 (SP6)
Dès que j'ajoute l'un des contrôles de ces bibliothèques à mon formulaire, le formulaire reste entièrement gris lorsqu'il est incorporé sur un autre ordinateur. L'autre ordinateur est un système Windows XP, donc j'espérais que les redistribuables manquants ne poseraient pas de problème, étant donné l'ancienneté de Visual Basic 6. Pour être sûr, j'ai installé les redistribuables VB6, mais malheureusement cela n'a pas fait de différence.
Est-ce que quelqu'un sait pourquoi mon contrôle ActiveX resterait gris sur d'autres ordinateurs, mais pas sur le mien, dès que j'ajoute l'un des contrôles des bibliothèques ci-dessus pour me former? FWIW J'ai juste besoin d'un contrôle des arbres, donc s'il y a une autre bibliothèque, plus appropriée, disponible - ça me va.
MISE À JOUR: En fait, il aide à télécharger MSCOMCTL.OCX dans C: \ WINDOWS \ system32 sur l'autre ordinateur, puis l'enregistrer via regsvr32 C:\WINDOWS\SYSTEM32\MSCOMCTL.OCX
. Cependant, je n'ai pas trouvé de source officielle pour ce fichier, et lancer l'enregistrement COM à la main me semble lourd. Est-ce qu'il n'y a vraiment pas de redistribuable que je pourrais utiliser?
Les Commandes Commandes 5.0 les plus anciennes (comctl32.ocx) ont une meilleure compatibilité avec XP/Vista que les Commandes Commandes 6.0 (mscomctl.ocx). Je suggère de l'utiliser à la place – rpetrich
@rpetrich: Oh, vraiment? Est-ce votre intuition, ou avez-vous des documents à l'appui? Si c'est vrai, je choisirais plutôt CC 5.0. –