Cita:
Iniciado por jcantomarin
Hola una pregunta basada en un ejemplo:
temgo dos exes (ambos compilados en visual basic 6):
1. Toolbar.exe
2. Catalogo.exe
Para ejecutar o abrir el módulo catalogo.exe hay dos opciones:
1. Ejecutar directamente el exe correspondiente (catalogo.exe)
2. Por medio de una opción del toolbar (toolbar.exe)
Lo que quiero hacer es validar si en ambos archivos (el usuario y contraseña) es decir; cuando se ejecuta el toolbar.exe se tiene que firmar el usuario correspondiente y de ahí podrá accesar a los catálogos, pero al abrir los catálogos deberá validar si es un usuario valido para este módulo y de ahí accesar o denegar el permiso; todo esto es para un usuario común, pero hay usuarios avanzados los cuales pueden saber que es un módulo aparte y pueden entra a el por medio del explorador de windows u otro medio ejecutando directamente el archivo catalogo.exe, para ello quiero que valida si el usuario ya esta firmado.. por al razón me gustaría saber cómo pasar parametros entre dos exes... (ojo una opción es simular sesiones tal como lo hace php, asp, etc.; pero no creo que sea la manera más conveniente.)
Sin más por el momento y en espera de que alguien pueda ayudarme les envío un cordial saludo.
Javier Canto Marín
PROGRAMA PRINCIPAL
primero asegura de tener un exe principal en donde quizas te hallas logeado y guardas esas variables login y clave
para pasar esas variables al siguiente EXE hijo y ahi tambien se logee sin digitar ninguna tecla solo enviandolo por el comando shell
Shell App.Path & "\programahijo.exe U" & login & ",C" & clave ejemplo tenemos un sistema INTEGRAL SISVENTAS y desde ahi llamamos con shell
"c:\MiSistema\planillass.exe Ujbautista,C12358" PROGRAMA HIJO
ahora en el programahijo crear un main y q ese sea su arranque
y en el validar la informacion enviada por el exe principal
Código:
sub Main()
'....... TU CODIGO NECESARIO O DE CONFIGURACION
If Validar = True Then
Debug.Print "Bienvenido al sistema"
FrmHorarios.Show
Else
MsgBox "Imposible la rutina de Acceso",32,"www.bitxense.com.pe"
END 'cierra el EXE hijo al no existir el usuario y clave correcto
End If
'....... TU CODIGO NECESARIO O DE CONFIGURACION
end sub
ahora tu creas la funcion validar :
Código:
Function Validar() As Boolean
Dim cad() As String
cad = Split(Command(), ",")
If (UBound(cad) > 0) Then
For i = LBound(cad) To UBound(cad)
If (Left(cad(i), 1) = "U") Then
login = Right(cad(i), Len(cad(i)) - 1)
ElseIf (Left(Trim(cad(i)), 1) = "C") Then
Clave = Right(Trim(cad(i)), Len(Trim(cad(i))) - 1)
End If
Next
Set rs = Validar_Usuario(login, Clave)
If (rs.RecordCount = 1) Then
Validar = True 'AQUI UNICAMENTE INGRESO Y TODO ESTA BIEN
Else
Validar = False
End If
Else
Validar = False
End If
End Function
Hay que entender que el validar y las funciones internas como validar_usuario son propias del programa hijo y tambien las variables utilizadas en la misma solo espero te sirva de guia para tus necesidades.
www.bitxense.com.pe | Soluciones Informaticas S.A.C. -
[email protected]
Cualquier duda aqui esta mi correo
[email protected] Lima-Peru