puede mscomctl descargar cargar vb6

descargar - VB6 IDE no puede cargar MSCOMCTL.OCX después de la actualización KB 2687323



mscomctl.ocx descargar (15)

Después de horas de esfuerzo, restauración del sistema, registro, anulación del registro de los ciclos y una noche de sueño, he logrado identificar el problema. Resulta que el archivo del proyecto contiene la siguiente línea:

Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0; MSCOMCTL.OCX

La información de la versión "2.0" parece ser la razón de no cargar. Cambiarlo a "2.1" en el bloc de notas resolvió el problema:

Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.1#0; MSCOMCTL.OCX

Por lo tanto, en una situación similar de "No se pudo cargar OCX", una posible forma de resolución es comenzar un nuevo proyecto. Ponga el control en uno de los formularios y verifique el archivo vbp con el bloc de notas para ver qué versión espera.

... O UNA SOLUCIÓN MÁS FÁCIL: (He agregado esta sección después del valioso comentario de Bob a continuación) Puede abrir su archivo de proyecto VBP en el Bloc de notas y encontrar la línea desagradable que impide que VB6 actualice el proyecto automáticamente a 2.1 y eliminarlo:

NoControlUpgrade=1

Después de que Windows Update instaló la actualización de seguridad KB2687323 , mi proyecto VB6 no se carga. El mensaje de error mostrado es "''[[project_vbp_path] /MSCOMCTL.OCX'' no se pudo cargar - ¿Continuar cargando el proyecto?". Tenga en cuenta que la ruta en el mensaje es la ruta de la carpeta del archivo vbp en lugar de la ruta registrada del control.

Detalles:

  1. MSCOMCTL.OCX se registra en la carpeta habitual de system32.
  2. El ejecutable producido exactamente por el mismo proyecto, una hora antes de que la actualización se ejecute bien y cargue el MSCOMCTL.OCX actualizado (lo he comprobado con Process Explorer).

La descripción de la actualización de seguridad indica que MSCOMCTL.OCX tiene una nueva versión fija. Así que revisé las propiedades del proyecto para la casilla de verificación "Actualizar controles ActiveX". Lo intenté de ambas maneras; Comprobado y desactivado en vano. VB6 IDE se negó a cargar el OCX actualizado.


El mismo problema con las macros VBA usando MSCOMCTL.OCX. El problema sigue sin resolverse con soluciones como "reg / unreg mscomctl.ocx". Se utiliza la información anterior de Rumi. Edité mi archivo * .dot, busque # 2.0 # 0, cámbielo a # 2.1 # 0 -> funcionó


El problema se resolvió ejecutando lo siguiente en el símbolo del sistema elevado:

comando:

cd C:/Windows/System32/ regtlib msdatsrc.tlb

o

cd C:/Windows/SysWOW64/ regtlib msdatsrc.tlb

Espero que esto ayude.


En algunas computadoras, he encontrado que la versión "2.0" de MSCOMCTL.OCX se ha agregado a la lista de KillBits de ActiveX, y por lo tanto el control no podrá cargarse o ejecutarse, incluso en la vista de diseño. La actualización a la versión "2.1" resolverá esto y es la solución recomendada.

En casos críticos, donde tiene que ejecutar un programa "ahora", o no tiene acceso al código fuente, o el control se usa 400 veces en un proyecto modular grande, puede usar un método de "gran martillo" y actualizarlo El registro para volver a habilitar el control:

**
ADVERTENCIA : la edición incorrecta del Registro de Windows puede estropear la computadora. Si no está seguro de lo que está haciendo, déjelo solo o estudie antes de continuar.
**

El claro el KillBit:

  1. Ejecute el Editor del Registro (regedit.exe o regedt32.exe)
  2. En el panel de la izquierda, navegue hasta la clave HKEY_LOCAL_MACHINE / SOFTWARE / Microsoft / Internet Explorer / Compatibilidad con ActiveX {BDD1F04B-858B-11D1-B16A-00C0F0283628}
  3. En el panel de la derecha, haga doble clic en "Banderas de compatibilidad", cambie el valor de Hex 0x400 (Decimal 1024) a 0, luego haga clic en Aceptar.
  4. Inicie la aplicación que utiliza la versión "2.0" de MSCOMCTL.OCX; debe funcionar como fue diseñado.

La lista de KillBits de ActiveX está destinada a brindar a Microsoft los medios para deshabilitar los controles que se consideran un riesgo de seguridad, y han diseñado el mecanismo de tal manera que la lista de KillBits de ActiveX se vuelva a aplicar al sistema en momentos aparentemente aleatorios, en además de cuando se instala una actualización, por lo que deberá planear volver a aplicar el cambio de registro. Hacer un archivo de combinación de registro funciona bastante bien, pero no es algo que quiera hacer cada vez que se ejecute la aplicación, porque no es un proceso silencioso (hay formas de hacerlo de manera silenciosa utilizando Windows Scripting, pero tendrá que aprender eso en su propio). El KillBit se verifica solo cuando el control lo solicita una aplicación, por lo que está a salvo de los reinicios una vez que la aplicación se inicia y carga el control.


Este problema apareció misteriosamente para mí hoy. No había hecho ninguna actualización de Windows, así que no sé la causa.

Esto lo arregló (en el símbolo del sistema elevado):

regtlibv12.exe msdatsrc.tlb



No encuentro NoControlUpgrade=1 en mi proyecto vbp. En cambio, me desarrollo tanto en xp como en windows7 x64. Cuando moví el proyecto de la ventana 7 a xp, ocurrió el error.

Por lo que descubro, estos son diferentes:

Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0; MSCOMCTL.OCX Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.1#0; MSCOMCTL.OCX

Acabo de cambiar el #2,1 nuevo a #2.0 en el archivo vbp y se puede ejecutar de inmediato. Este tipo de problemas ocurrieron antes, así que espero que Microsoft los explique y los resuelva en consecuencia. Gracias.


Para mí, esta solución funcionó a la perfección: http://home.pacific.net.hk/~edx/bin/readmeocx.txt

Arregla estas dos líneas así:

Object={F9043C88-F6F2-101A-A3C9-08002B2F49FB}#1.2#0; COMDLG32.OCX Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0; MSCOMCTL.OCX

Busque en los archivos (.vbp y .frm) las líneas como esta:

Begin ComctlLib.ImageList ILTree Begin ComctlLib.StatusBar StatusBar1 Begin ComctlLib.Toolbar Toolbar1`

Las líneas pueden ser así:

Begin MSComctlLib.ImageList ILTree Begin MSComctlLib.StatusBar StatusBar1 Begin MSComctlLib.Toolbar Toolbar1`


Para solucionar el problema:

Haz un archivo por lotes con el siguiente código:

@echo off reg query "HKEY_CLASSES_ROOT/typelib/{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}/2.1" if %errorlevel%==0 GOTO DELREGKEY if %errorlevel%==1 GOTO REGISTEROCX :DELREGKEY reg delete hkcr/typelib/{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}/2.0 /f :REGISTEROCX if exist %systemroot%/SysWOW64/cscript.exe goto 64 %systemroot%/system32/regsvr32 /u mscomctl.ocx /s %systemroot%/system32/regsvr32 mscomctl.ocx /s exit :64 %systemroot%/sysWOW64/regsvr32 /u mscomctl.ocx /s %systemroot%/sysWOW64/regsvr32 mscomctl.ocx /s exit


Puedes intentar comprobar tu registro

  • HKEY_LOCAL_MACHINE / SOFTWARE / Classes / TypeLib {831FDD16-0C5C-11D2-A9FC-0000F8754DA1}

Si es la versión 2.1, causará que no se pueda cargar el problema MSCOMCTL.OCX.

Puede restaurar a la versión 2.0 ( no solo copiar el archivo, sino que también debe desregistrar 2.1 y registrar el archivo restaurado )

O

Puedes probar la última versión 2.2

Alguna información de la versión:

  • 6.0.88.62 (2.0)
  • 6.1.97.82 (2.0)
  • 6.1.98.34 (2.1) <<< no me funciona
  • 6.1.98.46 (2.2)

Recientemente puse toda mi fuente en una caja de Windows 8 32. Tenía los problemas cargando mscomctl.ocx con proyectos existentes.

Creé un nuevo proyecto y agregué el control común (todos). Guarda el proyecto y lo vuelve a cargar sin ningún problema.

cuando se comparan los encabezados de proyecto nuevo contra antiguo, el anterior utiliza reference = * / blah blah. Encontré que eliminar esto es reemplazarlo con el Objeto = {blah} solucionado el problema.


Seguí teniendo problemas después de probar las cosas sugeridas aquí. Al final, resultó que tenía la versión incorrecta de mscomctl.ocx en mi carpeta SysWOW64. Encontré las siguientes versiones dando vueltas:

Mar. 09, 2004 01:00 AM 1,081,616 mscomctl.ocx Jun. 06, 2012 07:59 PM 1,070,152 mscomctl.ocx Dec. 08, 2015 03:57 AM 1,070,232 MSCOMCTL.OCX

Obtener el último (1,070,232) solucionó este problema para mí.


Tuve este problema y probé muchas soluciones diferentes. No trabajaron para mí, aunque creo que este error ocurre por un par de razones diferentes. Mi solución está en mi respuesta a esta pregunta aquí:

https://.com/a/15785253/2240058

Vale la pena intentarlo si nada más está funcionando para usted.


Yo uso win7 y tiene el mismo problema. Hoy resolví este problema, a través de la carga con muchos errores en mi proyecto, solo ordeno continuar después de eso goto Proyecto => Componente => Microsoft Windows Common Controls 6.0 (SP6) luego guarde el proyecto (el uso del archivo fue c: / windows / syswow64 / mscomctl.ocx)


El problema:

Los productos de Microsoft Office 2010 (o posterior) instalan actualizaciones que rompen la compatibilidad de MSCOMCTL.ocx y COMCTL32.ocx. Desafortunadamente, esto afecta a muchos otros programas como Visual Basic 6 SP6 e incluso Oracle Virtual Box v5. El problema real es HKEY_CLASSES_ROOT/TypeLib/{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}/2.0 clave de registro. Puede encontrar información detallada sobre este problema here .

Aquí hay otra solución de trabajo:

La solución supone que no ha dañado su registro al eliminar, reemplazar y volver a registrar MSCOMCTL.ocx y COMCTL32.ocx sin anular el registro de los archivos de parches de Office.

Cree un archivo por lotes llamado fix.cmd y coloque los siguientes comandos en él:

regsvr32 /s /u %windir%/SysWOW64/comctl32.ocx regsvr32 /s /u %windir%/SysWOW64/mscomctl.ocx del /y %windir%/SysWOW64/comctl32.ocx del /y %windir%/SysWOW64/mscomctl.ocx msiexec /passive /norestart /i KB2708437.msi msiexec /passive /a KB2708437.msi regtlib %windir%/SysWOW64/msdatsrc.tlb

Descargue de la actualización de seguridad para Visual Basic 6.0 Service Pack 6: 14 de agosto de 2012 el archivo msi y cámbiele el nombre a KB2708437.msi .

Nota: HERE se encuentra un enlace directo a la descarga del Service Pack 6.

Ejecute fix.cmd y el problema se solucionará!

Lo que hace fix.cmd es anular correctamente el registro y luego eliminar los archivos actuales de MSCOMCTL.ocx y COMCTL32.ocx, y luego aplicar el último parche de acumulación de Visual Basic 6 SP6. De hecho, la secuencia de comandos impone que el parche se instale y luego se reinstale al actualizar cada archivo, independientemente de la versión. Finalmente se registra la biblioteca de tipos msdatsrc.tlb.

Por favor, hágamelo saber si esto funciona para usted.

================================================== ====================

Solución avanzada:

Sin embargo, si accidentalmente dañó su registro, necesita obtener tantas versiones de MSCOMCTL.ocx y COMCTL32.ocx que pueda encontrar. Luego, debe comenzar desde la versión más reciente, volver a la versión anterior y registrar y anular el registro de los archivos ocx.

La última versión de MSCOMCTL.ocx es 6.1.98.39 (v2.1) de mayo de 2012, que es más probable que esté instalada en su sistema y que cause todos sus problemas.

La versión más antigua (heredada) es la que se envió con Visual Basic 6 en 1998 6.1.97.82 (v2.0) , o la que se envió con un service pack anterior 6.1.97.86 en abril de 2005.

Ejemplo:

regsvr32 /s comctl32.6.0.98.34.ocx regsvr32 /s /u comctl32.6.0.98.34.ocx regsvr32 /s comctl32.6.0.81.6.ocx regsvr32 /s /u comctl32.6.0.81.6.ocx regsvr32 /s comctl32.6.0.81.5.ocx regsvr32 /s /u comctl32.6.0.81.5.ocx regsvr32 /s mscomctl.6.1.98.39.(2.1).ocx regsvr32 /s /u mscomctl.6.1.98.39.(2.1).ocx regsvr32 /s mscomctl.6.1.98.34.ocx regsvr32 /s /u mscomctl.6.1.98.34.ocx regsvr32 /s mscomctl.6.1.97.86.ocx regsvr32 /s /u mscomctl.6.1.97.86.ocx regsvr32 /s mscomctl.6.1.97.82.(2.0).ocx regsvr32 /s /u mscomctl.6.1.97.82.(2.0).ocx regsvr32 /s /u %windir%/SysWOW64/comctl32.ocx regsvr32 /s /u %windir%/SysWOW64/mscomctl.ocx del /q %windir%/SysWOW64/comctl32.ocx del /q %windir%/SysWOW64/mscomctl.ocx msiexec /passive /norestart /i KB2708437.msi msiexec /passive /a KB2708437.msi regtlib %windir%/SysWOW64/msdatsrc.tlb

ADVERTENCIA:

No busque en Internet esos archivos. Para encontrar una versión diferente de los archivos OCX, descargue y extraiga los paquetes oficiales de Microsoft Installer, como los siguientes:

2005 abril - Microsoft KB896559

Diciembre de 2008 - Microsoft KB926857

2009 abril - Microsoft KB957924

2012 mayo - Microsoft KB2708437

También se recomienda ejecutar CCleaner versión 4.0 o posterior para solucionar cualquier otro problema relacionado con ActiveX en su computadora.