Visual Basic Foro
Programación => Visual Basic 6 => Mensaje iniciado por: E N T E R en Noviembre 03, 2012, 11:55:54 am
-
Por que me aparece este error cuando mudo en otra maquina pero en mi maquina funciona bien.
(http://www.mediafire.com/conv/2118a009518907bd175bfd6b1047cb543b530ecbbb84fd674ff18f8139c507a74g.jpg) (http://www.mediafire.com/view/?45j96pbkgolpfes)
Solo pasa con este proyecto si creo un nuevo proyecto en mi maquina y mudo otro lado no me aparece ese error.
-
tenes que registrar el control ocx
-
Esta registrado el OCX, si otro proyecto puedo abrir sin problema solo con ese proyecto falla.
-
Fijate en la ruta, ese control ocx no es tuyo, al no serlo debe ir en Windows\System (o System32)
Es decir tu proyecto lo tiene registrado en control stock etc... mejor cambia el de tu proyecto para que encuentre ese OCX común en el mismo lugar, y los ocx que si son para de tu proyecto (ej: ContStock.ocx) si puede estar en la carpeta de dicho proyecto.
Si en la nueva PC desregistras Mscomctl y la registras con la ruta de tu proyecto, pues tu proyecto funcionara pero todos los otros proyectos dejaran de funcionar si apuntan a System, los ocx comun (o de windows) no deben estar en carpetas de proyecto.
Saludos
-
Ahora probe cree un proyecto nuevo con el ocx y pasa lo mismo al mudar en otra pc
Prueben un poco el proyecto.
http://www.mediafire.com/?2rgkbm6kw8x2e
-
Estimado E N T E R
Como lo menciona YAcosta la librería de controles MSCOMCTL.OCX (Microsoft Windows Common Controls 6.0) debería estar registrado en la carpeta de sistema (System32).
Para solucionar estos este tipo de incidente hay dos formas:
1.- Para proyectos relativamente poco complejos (pocos formularios referenciando a la librería de controles) lo que menciona YAcostaes lo ideal.
2.- Para proyectos más complejos en los que tengas referenciados muchos formularios con esta librería de controles, mi recomendación es abrir en un editor de texto el archivo del proyecto y los de los formularios en los que tengas referencias a la librería de controles.
Para los archivos de proyecto (*.vbp) asegúrate que la referencia a la librería de controles sea la siguiente:
Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.1#0; MSCOMCTL.OCX
Paro los archivos de formularios (*.frm) asegúrate que la referencia a la librería de controles sea la siguiente:
Object = "{831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.1#0"; "MSCOMCTL.OCX"
Saludos desde algún lugar de Lima-Perú
-
Albertomi me salvaste el día amigo muchas gracias hice así
Para los archivos de proyecto (*.vbp) asegúrate que la referencia a la librería de controles sea la siguiente:
Object={831FDD16-0C5C-11D2-A9FC-0000F8754DA1}#2.0#0; MSCOMCTL.OCX
Lo raro es que si guardo en mi pc le pone el 2.1, en las otra pc si guardo pone la 2.0
Saludos...
-
Estimado E N T E R
Ese comportamiento es por el SP (service pack) que tienes instalado en tus PC, yo estoy usando Microsoft Windows Common Controls 6.0 (SP6)
Microsoft Visual Basic 6.0 Service Pack 6 Security Rollup Update, lo puedes descargar de la siguiente URL
http://www.microsoft.com/en-us/download/details.aspx?id=30505 (http://www.microsoft.com/en-us/download/details.aspx?id=30505)
Saludos desde algún lugar de Lima-Perú
-
Perfecto Albertomi, lo raro es que yo nunca instalo los SP normalmente instalo el VB y listo. Lo que si pudo haber pasado es que algun programa que instale actualizo de mi esos controles.
-
no importa en que ubicacion este el control ocx, lo que importa es que este registrado, una vez que lo registras en el registro de windows se guarda un identificador unico de ese OCX (GUID que te pusieron arriba que se guardan en el archivo .vbp del proyecto).
si al cargar el proyecto no encuentra ese GUID en el sistema te salta ese error, y cada version del mismo OCX tiene GUID diferentes, por eso si trabajas con la version 5 del service pack y en otra pc tenes la 6 no te va a andar.
siempre trabaja con la version 6, asi evitas que alguna aplicacion reemplaze ese ocx por ser viejo y te deja de funcionar tu aplicacion que usa uno viejo.