Pregunta

En un intento de intentar confirmar otra sugerencia de pósters SO para el manejo de claves en un control ActiveX alojado en una ventana de winforms, intenté hacer un control ActiveX de MFC básico y luego colocarlo en un formulario de Windows. En tiempo de diseño, el control apareció sin problemas.

Al ejecutar la aplicación, la temida " Excepción de clase no registrada. " aparece el diálogo.

Ambos proyectos están en VS 2008. La aplicación Winforms es una aplicación de marco .Net 3.5.

He intentado ejecutar el depurador, desde el explorador (privilegios elevados en ambos casos) y nada parece funcionar. Incluso me aseguré de registrar manualmente el OCX con los ejecutables regsvr32 de 64 y 32 bits.

Esto me tiene desconcertado, ya que no esperaría que esto no se ejecute no . He realizado experimentos similares en el trabajo (caja de Windows XP de 32 bits) sin problemas.

Mi configuración de VS es la siguiente:

  • Microsoft Visual Studio 2008
  • Versión 9.0.30729.1 SP
  • Microsoft .NET Framework
  • Versión 3.5 SP1

    El bit más confuso es que el control ActiveX parece aparecer en el tiempo de diseño. Cualquier respuesta, sugerencia o pensamiento será apreciado.

¿Fue útil?

Solución

Necesitaba cambiar la salida del host .Net a x86 en lugar de " Cualquier plataforma. " Esto es necesario porque la aplicación se está JITTED a x64 para la cual no se compiló el control ActiveX. D'oh! La aplicación se ejecutó bien después del cambio al proyecto de host ActiveX.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top