El VB6 help on GetObject dice "No se puede usar GetObject para obtener una referencia a una clase creada con Visual Basic" (¡la última oración!). Mi GUI VB6 expone objetos como un exe ActiveX, para que otros componentes los manipulen. Quiero que los otros componentes se conecten a la GUI que ya se está ejecutando, en lugar de iniciar una nueva instancia del exe. He encontrado utilizando GetObject funciona, si se utiliza esta sintaxis:GetObject y VB6 ActiveX exe
Set myobj = GetObject("", "ProjectName.ClassName")
Me preocupa que la ayuda dice que esto no debería funcionar, aunque he hecho un poco de prueba y no he encontrado ninguna problemas hasta ahora. ¿Algún experto COM por ahí que pueda decirme si voy a tener problemas en el futuro? ¿Y estaría bien con CreateObject de todos modos?
La configuración de ActiveX exe es: grupo de subprocesos con un solo subproceso. La clase tiene instancias MultiUse. Es posible que estas configuraciones sean suficientes para evitar que CreateObject inicie una nueva instancia del exe de todos modos. ¿Es eso correcto?
respuesta perfecta, gracias. ¡Siempre le digo a la gente RT * M así que esto es una prueba de mi propia medicina! GetObject ("ProjectName.ClassName) provoca el error 429, 'El componente ActiveX no puede crear el objeto'. Supongo que es en realidad mi proyecto y configuración de la clase que están impidiendo que varias instancias del archivo EXE que se creen. – MarkJ