Variable Disponible en Dos Proyectos

Tengo dos proyectos en VB6 (uno exe standard y otro control ActiveX) quisiera saber si fuera posible tener una variable que se pueda visualizar entre ambos proyectos y si fuera así en donde debe ser declarado.

2 respuestas

Respuesta
1
¿Pero están por separado por algún motivo en especial? ¿
Crea un exe, agregale el activex y juntas el proyecto.
Sino por favor explicame que función cumple el activex.
La variable tiene que ser global.
Hola experto:
Gracias por la pronta respuesta, bueno tal vez no me deje entender, los dos proyectos están juntos, viendo el explorador de proyectos inicia con mi proyecto exe standard donde están mis formularios, luego seguido más abajo esta el proyecto de un control personalizado que uso, la pregunta es como declarar una variable la cual pueda ser usada(vista) entre ambos proyectos.
Bueno, espero ahora si haberme dejado entender, gracias.
Yo las uso en un modulo o sino las declaras así
Public TipoLiqSel As Integer
He probado declarando en el modulo estándar que pertenece al proyecto donde están los formularios pero cuando quiero llamarlo desde el otro proyecto donde esta el código del control la variable no aparece, ¿qué puedo hacer?
¿Estas trabajando con visual basic 6.0?
Pero no podes desde otro proyecto, yo la guardaría en lavase de datos, en un archivo o en algún otro lado.
O sino fíjate de juntar el proyecto.
Si estoy usando VB6, los proyectos están uno a continuación del otro, cada uno con sus respectivos módulos estándar y de clases, como le vuelvo a comerntar en el primer proyecto están los formularios y el segundo proyecto esta el código de un control que he hecho, y lo que necesito es tener una variable que pueda usarlo entre ambos proyectos.
Saca el active por del otro proyecto, seguramente debe tener un sentido pero en este caso no lo veo.
No se que conexión hay entre los proyectos, ¿pero hacer un proyecto nuevo por un active x?
Tienen que estar enlazados a base de datos o en el mismo proyecto
¿Por qué no lo podes dejar todo en un mismo proyecto?
Creo que sigo sin dejarme entender, haré aquí como están distribuidos los proyectos:
- Proyecto1(Recuerdame.vbp) --> Aca estan mis formularios entre ellos el MDI
   + Formularios
   + Modulos
   + Modulos de clase
   + Documentos Relacionados
- Proyecto2 (TittleButton.vbp) --> Aca se encuentra todo el codigo del control
  + Modulos
  + Modulos de clase
  + Controle de usuario
  + Documentos relacionados
Por más que declaro una variable en +Módulos ya sea de Proyecto1 o Proyecto2 no puedo verla en el otro según sea el caso.
Por favor su ayuda, gracias.
Claro, es porque son dos proyectos completamentes distinto, no es como el vb.net que podemos tener muchas soluciones.
Pasa todo los componentes y demás cosas del proyecto 2 al proyecto 1.
Y que solamente te quede 1 solo proyecto global, general y único.
Ahí si vas a poder trabajar con variables globales, sino no te queda otra que usar o una base de datos donde guardes el dato o un archivo de texto.
Creo que pasa por el planteo de porque armaste un proyecto solamente para el código de control, cuando tranquilamente pueden estar en el mismo proyecto.
Respuesta
1
Supongo que el activex lo consumes desde el exe de vb6, entonces crea una clase que tenga una propiedad que sea el valor que quieres compartir entre ambos.
Gracias experto por su respuesta y quisiera me permita hacerle un poco más puntual la consulta, conseguí el código de colocar un cuarto botón en el FormMdi, el problema es que cuando en mi aplicación tengo cargado un Form MODAL y si por algún motivo voy con el mouse y hago click sobre el cuarto botón que está atrás en el MDI se ejecuta el evento mousedown y me produce un error, se supone que cuando un form modal esta activo los demás forms que están como secundarios no se pueden manipular hasta que el form modal se cierre, entonces como podría hacer para que cuando haya un form modal activo mi cuarto botón que está en el MDI esté deshabilitado.
Muchas gracias por su tiempo experto y espero sus sugerencias.
El tema es que por lo que esta en un MDI por eso te permite tener acceso al botón
Se me ocurre que en ese botón preguntes si el formulario en cuestión esta activo o visible, pues no ejecute el código que este en este botón.
Justamente trate de hacer eso en el código del control pero por qué no puedo poner el MDIFORM.FORMACTIVE o algo parecido, mis proyectos están distribuidos de la siguiente forma.
- Proyecto1(Recuerdame.vbp) --> Aca estan mis formularios entre ellos el MDI
   + Formularios
   + Modulos
   + Modulos de clase
   + Documentos Relacionados
- Proyecto2 (TittleButton.vbp) --> Aca se encuentra todo el codigo del control
  + Modulos
  + Modulos de clase
  + Controles de usuario
  + Documentos relacionados
Dentro de "Controles de Usuario" en el código del control coloco el MDIFORM que está en Proyecto1 pero no aparece en la lista de variables, ¿qué puedo hacer para que se vea desde el Proyecto2?.
Debes pasarlo como una propiedad al segundo proyecto
Disculpe experto pero como puedo hacer eso, gracias.
Creas una propiedad a la clase o al formulario, o al controlde usuario, lo que uses.
En el proyecto 1 pasas en esa propiedad el formulario mdi para que puedas hacer lo que quieres.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas