Hacer ocx con gráfico vb

Estoy realizando un scada en wincc, en una de las pantallas tengo que crear un ocx en donde se lean un datos de unos ficheros y genere una gráfica.
El problema que se me presenta es el siguiente, cuando yo añado la librería del control mschart, para abrirlo para introducirlo en el usercontrol, me sale el siguiente error.
"microsoft chart control 6.0 (sp4)(oledb) es un componente con un único subproceso y no se puede usar en proyectos con múltiples subprocesos"
La conclusión es que no me deja insertar el gráfico, como puedo solucionar esto. El ocx lo tengo listo tan sólo me falta representar los datos, existe alguna forma de corregir ese error u otra manera de representar los datos sin ser con el mschart.
Ruego que me responda lo más rápidamente posible, pues es muy urgente.
Gracias
Jorge Ferreira
Ingeniero Tecnico Electronica

4 respuestas

Respuesta
1
Revisa si creando un nuevo hilo para esa aplicación te funciona.
Cuando dices crear un nuevo hilo, te refieres a crear un proyecto activeX nuevo. Si es eso si ya lo he probado y sigue pasando lo mismo.
¿Cómo se podría solucionar?
Busca que es un thread y como se usa en VB
Creo que he encontrado una solución pero no sé como me afecta, a ver si me puedes decir algo de esto.
He abierto un proyecto ControlActiveX, Proyecto, Propiedades del Proyecto, Modulo de subprocesos.
En este apartado de modulo de subprocesos aparece subprocesos independientes, si lo cambio y pongo subproceso único me deja insertar el ocx del mschart. Cambiar esta opción que me supone.
Muchas gracias
Eso lo que significa es que tu ocx trabaja en el mismo hilo de ejecución de la aplicación que lo llame o utilice.
Respuesta
1
Creo recordar que ese tipo de problema se da por las propiedades del proyecto o de la DLL que hayas generado.
Comprueba las opciones que te da VB y prueba, si continua dándote el error podrías reinstalar el ssp más actual ( a veces se quedan 'raros') o bien probvaar un componente gráfico de terceros que hay varios o derivar toda la salida a excel que suele dar buenr resultado.
Te paso un link de la ultima opción que podrías usar como base si finalmente optas por este camino.
http://www.vbcode.com/Asp/showzip.asp?ZipFile=http://www.vbcode.com/code/ExcelChartAsWebPage06042002.zip&theID=6984
Me podrías aclarar lo de reinstalar el ssp más actual, que es el ssp. Yo lo que ehe utilizado es el ocx microsoft MSCHART.
En cuanto a componentes gráficos de terceros, sabes de alguno, pues yo estuve buscando y el único que encuentro para gráficos es el MSCHART
Gracias
Lo del SSP ves a microsoft y bajate el ultimo service pack que encuentres ( creo recordar que era el SP6). Con eso simplemente puede ser que desaparezca el problema.
Gráficos de terceros hay varios te paso un link de google en el que salen varias cosas:
http://www.google.es/search?hl=es&rlz=1C1CHMG_esES291ES303&ei=2jpGS8q7NYeL4Qa8hP2EAw&sa=X&oi=spell&resnum=0&ct=result&cd=1&ved=0CAwQBSgA&q=free+ocx+graph+component&spell=1
Muchas gracias.
He actualizado al service pack 6 y no me ha solucionado el problema. En cuanto a los ocx he encontrado alguno que me vale como el NETPro pero tiene el mismo inconveniente.
Creo que he encontrado una solución pero no sé como me afecta, a ver si me puedes decir algo de esto
He abierto un proyecto ControlActiveX, Proyecto, Propiedades del Proyecto, Modulo de subprocesos.
En este apartado de modulo de subprocesos aparece subprocesos independientes, si lo cambio y pongo subproceso único me deja insertar el ocx del mschart. Cambiar esta opción que me supone.
Muchas gracias
A eso es a lo que me refiera con lo de las propiedades en la primera respuesta :-)
En la practica te da igual, configúralo para que funcione y dejalo así.
Respuesta
1
En primer lugar disculpa el retraso en la respuesta. Entre las fiestas y que cada día sois más los que preguntáis y que yo tengo menos tiempo... no doy abasto.
He de reconocer que no he usado nunca el objeto mschart desde VB, por lo que no he tenido ese problema.
He estado mirando otros objetos que no sean el mschrt20.ocx y no he visto ninguno (de momento).
Lo más que he encontrado por internet es esta dirección http://tesis.ula.ve/pregrado/tde_busca/arquivo.php?codArquivo=1271 de alguien que ha hecho algo similar y no sé si te dará alguna pista.
Siento no poder ayudarte más.
Gracias por la respuesta pero no me ha servido de mucho.
Creo que he encontrado una solución pero no sé como me afecta, a ver si me puedes decir algo de esto
He abierto un proyecto ControlActiveX, Proyecto, Propiedades del Proyecto, Modulo de subprocesos.
En este apartado de modulo de subprocesos aparece subprocesos independientes, si lo cambio y pongo subproceso único me deja insertar el ocx del mschart. Cambiar esta opción que me supone.
Muchas gracias
En principio no parece tener mucha importancia el cambio de la opción a subprocesos independientes.
Este tema, como muchos de los que me planteáis en las preguntas, tampoco lo he usado nunca por lo que sólo puedo intentar ayudarte buscando ayuda por aquellas páginas que utilizo normalmente para mi trabajo.
En este caso he visto que 'El Guille' (una de las páginas de referencia que más uso para resolver mis dudas) habla de ese tema en la siguiente dirección:
http://www.elguille.info/vb/articulos/vb5sp2.htm#RMEOVERVIEW_APT_THREADING_CHANGES
Respuesta
-1
¿Cómo estas?
Lamentablemente no se como ayudarte, nunca tuve un problema de ese tipo...
Un abrazo!

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas