Visual Basic - Retornar codigo fuera de la aplicacion

Life is soft - evento anual de software empresarial
 
Vista:

Retornar codigo fuera de la aplicacion

Publicado por Claudio (20 intervenciones) el 21/06/2006 21:02:57
Hola a todos, tenemos un programa que agenda la ejecucion diaria de mi programita, el problema es que este agendador necesita que mi programita en VB le retorne un codigo que indique si funciono bien o mal (codigo de error) y no se como retornar un codigo hacia "afuera" de una aplicacion VB, ¿existe alfun metodo, funcion que pueda hacer esto??

gracias.
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:Retornar codigo fuera de la aplicacion

Publicado por Alex (119 intervenciones) el 22/06/2006 01:04:53
Hola!
La verdad yo nunca he hecho esto, creo que puede ser algo difícil por que cuando haces que el programa sea yá ejecutable, el código se compila y me imágino que lo traduce a un lenguaje especial para que el sistema operativo lo entienda.

La unica forma que se me ocurre que puede funcionar es mandando llamar un código nuevo existene en un archivo de texto o algo así, pero no lo he intentado, cuando tengas una respuesta por favor avisame para aprenderla juntos...
Hasta luego!
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

RE:Retornar codigo fuera de la aplicacion

Publicado por Matías freire (421 intervenciones) el 22/06/2006 22:29:39
Mirá... que yo sepa no se puede "mandar información" a un programa externo. Lo que sí puedes hacer (como dijo el chico anterior), es que el programita de VB grabe un archivo con el código de error, y tu aplicación lea ese archivo. si no querés hacer un archivo, podés grabar una entrada en el registro de windows con la siguiente instrucción

SaveSetting App.Title, "CodigoError", "Numero", [acá ponés el codigo de error]

para recuperarlo lo haces con:

numeroerror = GetSetting(App.Title, "CodigoError", "Numero")

obviamente, el app.title de la funcion GetSetting lo tenes que reemplazar por el nombre de la aplicacion de Vb, ya que esa parte del código la vas a tener en el programa que tiene que recibir el dato.

espero que te haya servido!
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

RE:Retornar codigo fuera de la aplicacion

Publicado por Cecilia Colalongo (3116 intervenciones) el 23/06/2006 16:31:56
Tendrás que trabajar con variables de entorno que una vez fuera de tu aplicación cualquier otra aplicación Windows pueda leerlas.

Si te fijas por línea de comandos la instrucción SET tienes todas las variables disponibles.

Revisa la función SetEnviromentVariable:

http://www.allapi.net/apilist/SetEnvironmentVariable.shtml

También se puede hacer por el registro de Windows:

HKEY_CURRENT_USER\Environment
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControl
Set\Control\Session
Manager\Environment

and then broadcast a message letting other apps pick up the changes:
Private Const WM_SETTINGCHANGE = &H1A
Private Const HWND_BROADCAST = -1
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" _
(ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, _
ByRef lParam As Any) As Long

Dim lResult As Long
lResult = SendMessage(HWND_BROADCAST, WM_SETTINGCHANGE, 0, ByVal
"Environment")
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
Imágen de perfil de Alberto
Val: 594
Bronce
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Si Se puede

Publicado por Alberto (359 intervenciones) el 26/06/2006 17:30:01
Si se puede, para ello puedes usar la API
Declare Sub ExitProcess Lib "kernel32" Alias "ExitProcess" (ByVal uExitCode As Long)

donde el parametro es el valor que se va a devolver, por lo tanto debes tener en cuenta que la última sentencia que se debe ejecutar en tu programa es la llamada a esa API.
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

RE:Si Se puede

Publicado por Claudio (20 intervenciones) el 27/06/2006 16:39:20
Alberto,
me finciona casi bien porque logro retornar codigos pero me funciona con el 0 y el -1, si le coloco 10 ya no funciona, estoy ocupando el ERRORLEVEL de ms-dos para rescatarlo ¿o se obtiene de otra manera?
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

RE:Si Se puede

Publicado por Claudio (20 intervenciones) el 27/06/2006 17:24:55
Alberto,
me retracto, funciona super bien, el problema que tenia era en el .bat, muchas gracias.
atte. Claudio Espina
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