El mensaje de error, señala que falla la librería de tipos StdOLE2 que es de VB6... he dado por supuesto que has compilado más programas en VB6, y que por tanto
1 - esa librería la tienes en el sistema,
2 - está registrada y
3 - la misma instalación de vb6, te funciona (sea cual sea el S.O. que tengas)...
Luego partiendo de esa base... es que sigo.
Abre con el editor de texto plano de tu preferencia el fichero del proyecto (Project1.vbp)
Esta es la ruta que viene en la línea (por defecto es correcta en los equipos para los que VB6 fue diseñado):
Reference=*\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\WINDOWS\system32\stdole2.tlb#OLE Automation
Puede estar pasando alguna de las siguientes situaciones:
1- No tengas esa librería
2- La tienes pero no la tienes registrada.
3- La tienes y está registrada, pero la ruta donde yace es otra.
4- Tienes otra vesión, no la versión 2.0 de vb6 (que es la que se precisa).
Hay formas rápidas de comprobarlo...
A - Abre un nuevo proyecto (vacío, sin código), guárdalo, compílalo, y luego abre la carpeta y pon en marcha el ejecutable... si funciona... ve al proyecto, ábrelo con el editor de texto, y mira la línea correspondiente a la referencia de StdOLE2... copia esa línea y remplaza la que tienes en el proyecto QR-Code equivalente, por ésta, y guarda los cambios, ya debiera funcionarte.
Si no te ha funcionado, lo anterior (es decir nunca has compilado antes un proyecto en VB6 en tu equipo actual, con tu S.O. actual)....
B - Abre el registro de windows (regedit)... sitúate (es decir, pincha para seleccionar y posicionar ahí el cursor) en la raíz de la base de datos del registro (Mi PC, my Computer, o lo que sea que ponga según versión e idioma) .
Ahora dale al menú --> Editar --> Buscar y en la ventana de búsqueda pega: stdole2.tlb (sin comillas ni espacios).... cuando lo encuentre si despliegas la rama, encontrarás la ruta donde se localiza la librería de tipos...
O bien búscala tu mismo desplegando las ramas (puede que en tu sistema varía, ya que Mocosoft, cambia cosas siempre entre versiones): Mi Pc --> HKey classes root --> Typelib --> HKEY_CLASSES_ROOT\TypeLib\{00020430-0000-0000-C000-000000000046} Despliega la clave... 2.0 --> 0 --> win32 -----> a la derecha vendrá la ruta donde se encuentra registrada. Esa ruta es la que debes poner en el fichero de proyecto QR-Code...
O simplemente abre el proyecto, ve a referencias y busca la ruta manualmente hasta la librería huérfana... tal como te señalé, para la otra.
Esta es la info que tengo de mi librería... (para VB6 uso un XP)... coincide con la info que te muestra...
"stdole, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"
1 - esa librería la tienes en el sistema,
2 - está registrada y
3 - la misma instalación de vb6, te funciona (sea cual sea el S.O. que tengas)...
Luego partiendo de esa base... es que sigo.
Abre con el editor de texto plano de tu preferencia el fichero del proyecto (Project1.vbp)
Esta es la ruta que viene en la línea (por defecto es correcta en los equipos para los que VB6 fue diseñado):
Reference=*\G{00020430-0000-0000-C000-000000000046}#2.0#0#C:\WINDOWS\system32\stdole2.tlb#OLE Automation
Puede estar pasando alguna de las siguientes situaciones:
1- No tengas esa librería
2- La tienes pero no la tienes registrada.
3- La tienes y está registrada, pero la ruta donde yace es otra.
4- Tienes otra vesión, no la versión 2.0 de vb6 (que es la que se precisa).
Hay formas rápidas de comprobarlo...
A - Abre un nuevo proyecto (vacío, sin código), guárdalo, compílalo, y luego abre la carpeta y pon en marcha el ejecutable... si funciona... ve al proyecto, ábrelo con el editor de texto, y mira la línea correspondiente a la referencia de StdOLE2... copia esa línea y remplaza la que tienes en el proyecto QR-Code equivalente, por ésta, y guarda los cambios, ya debiera funcionarte.
Si no te ha funcionado, lo anterior (es decir nunca has compilado antes un proyecto en VB6 en tu equipo actual, con tu S.O. actual)....
B - Abre el registro de windows (regedit)... sitúate (es decir, pincha para seleccionar y posicionar ahí el cursor) en la raíz de la base de datos del registro (Mi PC, my Computer, o lo que sea que ponga según versión e idioma) .
Ahora dale al menú --> Editar --> Buscar y en la ventana de búsqueda pega: stdole2.tlb (sin comillas ni espacios).... cuando lo encuentre si despliegas la rama, encontrarás la ruta donde se localiza la librería de tipos...
O bien búscala tu mismo desplegando las ramas (puede que en tu sistema varía, ya que Mocosoft, cambia cosas siempre entre versiones): Mi Pc --> HKey classes root --> Typelib --> HKEY_CLASSES_ROOT\TypeLib\{00020430-0000-0000-C000-000000000046} Despliega la clave... 2.0 --> 0 --> win32 -----> a la derecha vendrá la ruta donde se encuentra registrada. Esa ruta es la que debes poner en el fichero de proyecto QR-Code...
O simplemente abre el proyecto, ve a referencias y busca la ruta manualmente hasta la librería huérfana... tal como te señalé, para la otra.
Esta es la info que tengo de mi librería... (para VB6 uso un XP)... coincide con la info que te muestra...
"stdole, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"