Estoy experimentando con la escritura de controles ActiveX y noté que parece que no puedo crear un control ActiveX en Visual Basic (6.0) que cuenta con controles un poco más sofisticados. Los controles simples como etiquetas, botones y casillas de verificación parecen funcionar bien, pero tan pronto como trato de agregar, p. un control de árbol para mi formulario, el control ActiveX permanece completamente vacío tan pronto como lo incrusto en alguna aplicación host en otra computadora. Sin embargo, funciona bien en mi caja de desarrollo.¿Cuál es la fuente adecuada para el componente Windows Common Controls 6.0 (MSCOMCTL.OCX)?
Al ir a través de la Proyectos-> Componentes (Ctrl + T) lista, me encontré con dos bibliotecas que aparentemente contienen un control de árbol:
- Microsoft Windows Common Controls 5.0 (SP2) de Microsoft
- Controles comunes de Windows 6.0 (SP6)
Tan pronto como agregue cualquiera de los controles de estas bibliotecas a mi formulario, el formulario permanece totalmente gris cuando está incrustado en otra computadora. La otra computadora es un sistema Windows XP, así que esperaba que los redistribuibles faltantes no fueran un problema, teniendo en cuenta la antigüedad de Visual Basic 6. Para estar seguro, instalé los redistribuibles de VB6, pero desafortunadamente eso no hizo la diferencia.
¿Alguien sabe por qué mi control ActiveX se mantendría gris en otras computadoras, pero no en la mía, tan pronto como agregue alguno de los controles de las bibliotecas anteriores a mí? FWIW Solo necesito un control de árbol así que si hay alguna otra biblioteca más apropiada disponible, me parece bien.
ACTUALIZACIÓN: Al final resultó que, ayuda a descargar MSCOMCTL.OCX en C: \ Windows \ System32 en el otro equipo y luego registrarlo a través de regsvr32 C:\WINDOWS\SYSTEM32\MSCOMCTL.OCX
. Sin embargo, no encontré una fuente oficial para este archivo, y ejecutar el registro COM a mano me parece engorroso. ¿Realmente no hay redistribuible que pueda usar?
Los primeros controles comunes 5.0 (comctl32.ocx) tienen mejor compatibilidad con XP/Vista que los controles comunes 6.0 (mscomctl.ocx). Sugiero usarlo en su lugar – rpetrich
@rpetrich: Ah, ¿en serio? ¿Es eso lo que siente, o tiene algunos documentos para respaldarlo? Si eso es cierto, de hecho iré por CC 5.0. –