Error DNC: "Runtime Error 339 / 429" (Falta componente ActiveX / OCX)

Por qué el software DNC antiguo puede fallar al instalarse o cerrarse inesperadamente durante su ejecución.

¿Está viendo alguno de estos errores de ejecución al iniciar su software DNC?

"Runtime Error 339: Component '[filename].ocx' or one of its dependencies is not correctly registered" (El componente o una de sus dependencias no está correctamente registrado):

Ocurre cuando falta un archivo necesario o la instalación fue incorrecta en versiones recientes de Windows.

"Runtime Error 429: ActiveX component can't create object" (El componente ActiveX no puede crear el objeto):

Ocurre cuando el programa intenta usar un archivo, pero este se niega a ejecutarse en versiones modernas de Windows.

La causa y la solución para PCs en talleres de maquinado

Las aplicaciones de software antiguas (heredadas) a menudo dependen de archivos "auxiliares" separados para mostrar o gestionar elementos como cuadros de texto, botones, menús y puertos RS232. Por razones de seguridad, las versiones modernas de Windows pueden colocar estos archivos necesarios en una carpeta distinta donde la aplicación no puede encontrarlos, o simplemente no instalarlos. Si Windows o la aplicación no pueden encontrar o abrir uno de estos archivos auxiliares al iniciar el programa, este se cierra inmediatamente con el Error 339 o el Error 429.

La Causa: Esto sucede típicamente al ejecutar software antiguo en versiones modernas de Windows, después de una actualización importante del sistema operativo, o si el instalador original carecía de privilegios de administrador para registrar sus archivos durante la configuración.

La Solución: Resolver estos errores en software antiguo a menudo requiere abrir un símbolo del sistema (Command Prompt) con privilegios elevados y registrar manualmente los archivos faltantes usando las utilidades del sistema de Windows. A veces, la aplicación puede instalarse y configurarse para 'Ejecutar como administrador', lo cual, hoy en día, debería evitarse.

Opciones de EasyDNC para administradores de planta y TI

  • EasyDNC 4.7: Una aplicación heredada de 32 bits para versiones anteriores de Windows. Funciona en versiones de 64 bits de Windows, y muchos operadores de CNC todavía prefieren esta versión a pesar de su antigüedad y de no ser totalmente compatible con el UAC (User Account Control).
  • EasyDNC v5 (RemoDNC): Una aplicación moderna 'AnyCPU' que utiliza los frameworks .NET actuales, por lo que no tiene dependencias. Se instala y ejecuta en Windows XP SP3 o posterior. En computadoras de 64 bits, se ejecuta en modo nativo de 64 bits y es totalmente compatible con el UAC de Windows.

Detalles técnicos: Por qué falla la creación de componentes ActiveX/COM

Para administradores de TI y desarrolladores de software, los errores 339 y 429 se originan por fallas en el registro COM cuando una aplicación intenta la instanciación de objetos:

  • Controles COM/ActiveX no registrados: Si un programa de instalación se ejecutó sin derechos de administrador, el Control de Cuentas de Usuario (UAC) de Windows bloquea silenciosamente el registro de su ID de clase (CLSID) en HKEY_CLASSES_ROOT.
  • Redirección del subsistema de 64 bits: En versiones de 64 bits de Windows, los controles ActiveX de 32 bits deben residir y registrarse a través del subsistema de 32 bits usando C:\Windows\SysWOW64\regsvr32.exe. Si se registran incorrectamente o se colocan solo en System32, los binarios antiguos de 32 bits no pueden localizar o instanciar el objeto.
  • Cadenas de dependencia rotas: Incluso si el archivo .ocx principal está presente, el error 339 o 429 se activará si falta una biblioteca de vínculos dinámicos secundaria (como un archivo DLL de tiempo de ejecución de Visual C++ antiguo) en la ruta del sistema.