Visual Basic - CGI - OCX

Life is soft - evento anual de software empresarial
 
Vista:

CGI - OCX

Publicado por Paco (2 intervenciones) el 27/11/2000 00:00:00
Soy nuevo en esto de Visual Basic y estoy intentando hacer un pequeño CGI que
debería de utilizar un OCX.

El problema es que no sé como utilizar el OCX.

Este es el error que me da desde el navegador:
"La variable de tipo Object o la variable de bloque With no está
establecida"

Yo he declarado el objeto de la siguiente forma:
"Dim objeto As TipoObjeto"

Creo que me falta alguna instrucción del tipo "set objeto = new ???" o
algo así, pero no tengo mucha idea.

Alguien puede ayudarme?

Gracias, salu2.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:CGI - OCX

Publicado por Erik (77 intervenciones) el 01/12/2000 00:00:00
Si no entiendo mal tu pregunta, creo que lo único que te falta es el constructor. Este depende de cómo esté puesta la propiedad Instancing de la clase y depende de si el componente es en proceso o fuera de proceso. Me explico:

Si el componente es en proceso y la propiedad Instancing es MultiUse (que será lo más habitual), lo más sencillo es utilizar New:

Private Objeto as New TipoObjeto

O bien

Private Objeto as TipoObjeto
Set Objeto = New TipoObjeto

Si el objeto tiene eventos y quieres utilizarlos hay que declararlo WithEvents, es decir:

Private WithEvents Objeto as New TipoObjeto

O bien:

Private WithEvents Objeto as TipoObjeto
Set Objeto = New TipoObjeto

Si el componente es fuera de proceso y quieres que se ejecute en proceso declaras los objetos igual que si fuera en proceso, con el Constructor New. Si quieres que se ejecute en su propio proceso y aprovechar sus subprocesos tienes que usar el constructor CreateObject:

Dim Objeto as TipoObjeto

Set Objeto=CreateObject("NombreComponente.TipoObjeto")

Recuerda que a todo constructor debe seguirle un Finalizador para no dejar la memoria llena de basura, es decir:

Cuando no vayas a usar más un objeto:

Set Objeto=Nothing

Si el objeto está en una variable de tipo Variant:

vntObjeto=Empty

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar