partner online net full convert vb6 vb6-migration

vb6 - online - Riesgos de confiar en aplicaciones de Visual Basic 6.0



vb migration partner full (5)

Dado que el tiempo de ejecución de Visual Basic 6.0 se envía con Windows 7 y seguirá siendo compatible durante la vigencia del sistema operativo ( hasta enero de 2020 ) y que el IDE de Visual Basic 6.0, aunque ya no es compatible , es bastante estable, ¿cuáles son los riesgos en torno mantener las aplicaciones de misión crítica en Visual Basic 6.0 durante los próximos años?


Hay muchos riesgos ... Por ejemplo, si se encuentra un agujero de seguridad con el tiempo de ejecución de VB6, ¿MS invertirá el dinero para solucionarlo? Hay muchas posibilidades de que lo hagan, pero en este punto es tan viejo que quizás no se molesten.

La evaluación de riesgos también debe basarse en cuán crítica es su aplicación y cuán grande / complicada es. Si esto es el núcleo de su negocio y el valor de un solo día de inactividad arruinaría su negocio, estaría buscando reemplazarlo bastante rápido con algo que realmente sea compatible.

La otra cara de la moneda es que tienes mucha compañía. Todavía hay una gran cantidad de código VB6 en producción (estoy bastante seguro de que algunas de las cosas que escribí en VB6 aún se están ejecutando).


Uno de los riesgos es que trabajas en un lenguaje que los desarrolladores no quieren manejar. Será más difícil encontrar buenos desarrolladores a medida que los desarrolladores actuales se vayan o necesitarás expandir la aplicación.

Además, está aumentando el tamaño de la base de código que algún día podría querer actualizar a otro idioma.

Lo más importante es que agregar nuevas funciones a su aplicación VB6 es más costoso de lo que sería si la aplicación estuviera en un lenguaje mejor, como C # o VB.NET. Esto es porque:

  1. Los desarrolladores de VB6 cuestan más para emplear. Como los desarrolladores no quieren usar VB6, exigirán más dinero para aceptar un puesto en su empresa (yo lo haría)
  2. .NET tiene una biblioteca estándar mucho más grande y más componentes de terceros que VB6. En mi experiencia, hay muchos más componentes de código abierto de terceros en .NET, mientras que los componentes de VB6 suelen ser propietarios.
  3. usar Visual Studio 2008 o 2010 es más productivo que el IDE VB6 debido a todas las mejoras y características de los últimos 10 años.
  4. .NET tiene un mejor soporte de prueba unitaria.
  5. C # es un lenguaje mejor que VB6. Un buen desarrollador de C # puede escribir una característica mucho más rápido que un buen desarrollador de VB6 porque el lenguaje es mucho más poderoso.

El consejo oficial para los propietarios de aplicaciones VB6 de Microsoft UK es:

[No actualice ni reemplace su aplicación VB6 si] su aplicación está funcionando bien, no ha requerido ningún cambio durante muchos años, no hay planes para ampliar la funcionalidad, ni la necesidad de integrarla con aplicaciones más nuevas

Eso le dice los factores que aumentan el riesgo para una aplicación VB6:

  • Una necesidad de cambiar la aplicación (correcciones de errores o nuevas características).
  • Una necesidad de integrar la aplicación con aplicaciones más nuevas.
    • Pero la integración no requiere migración . Interop le permite mezclar el código .Net con VB6 (PDF) .

EDITAR Olvidé mencionar el riesgo principal. Migrar el código VB6 a .Net puede ser una gran tarea. En mi opinión, actualmente es más fácil de lo que era en los primeros días: ahora hay excelentes herramientas comerciales ; y algunas características más recientes del lenguaje VB.Net lo hacen más fácil . El riesgo es que puede volverse más difícil nuevamente si lo deja demasiado tiempo. Llegará un momento en que la mayoría de las personas que alguna vez van a migrar ya han migrado: entonces las herramientas pueden desaparecer y el conocimiento de la comunidad sobre la migración puede degradarse. /EDITAR

Estoy seguro de que Microsoft eventualmente abandonará el tiempo de ejecución de VB6, pero tenga en cuenta que Windows 8 todavía admite aplicaciones de 16 bits . Y luego hay máquinas virtuales. Personalmente, creo que las aplicaciones VB6 seguirán funcionando durante mucho tiempo.


Las aplicaciones en VB6 se fabrican hoy en grandes cantidades. En pocas palabras, son confiables. No hay riesgos, solo es un impedimento, no es una plataforma cruzada. Hay muchos proyectos en línea de código abierto VB6 para todos los dominios. Ahora se usa en Linux. Funciona muy bien con ASM integrado para funciones de bajo nivel.

Algunos buenos puntos:

  • Los componentes VB6 son gratuitos en línea.

  • VB6 es más productivo que Visual Studio 2008 o 2010 o cualquier otro idioma después de VS6.

  • Al contrario de lo que se ha dicho anteriormente, VB6 es un lenguaje mejor que C # (también es mucho más rápido). Un buen desarrollador de VB6 puede escribir una característica mucho más rápido que un buen desarrollador de C # porque el lenguaje es mucho más poderoso.


Otro posible riesgo también viene con el uso de ocx antiguo que tiene un setup.exe de 16 bits para el entorno de desarrollo.

No puede ejecutar la configuración de 16 bits en un nuevo entorno de desarrollo de os de 64 bits.

Citar, por ejemplo, Farpoint Spread 3.0.16: tiene una configuración de desarrollador de 16 bits, pero en este afortunado caso puede encontrar una aplicación setup.exe actualizada de 32 bits.

Algunos ocx no tienen setup.exe de 32 bits para el entorno de desarrollo.

A menudo hay problemas con los viejos números de serie ocx / claves de registro. Con algunos de esos ocx ya no recibes soporte