FoxPro/Visual FoxPro - COMO PUEDO LLAMAR UN EXE.???

 
Vista:

COMO PUEDO LLAMAR UN EXE.???

Publicado por angel (100 intervenciones) el 21/04/2008 19:22:12
TENGO EL SIGUIENTE CODIGO

------------------------------------------------------------------------------------------------------------
ruta="D:Program FilesCarbon Copy 32"
ARCHIVO="CCW32.EXE"
IF DIRECTORY('&ruta')
CD '&ruta'
ENDIF
IF DIRECTORY("C:Program FilesCarbon Copy 32")
CD "C:Program FilesCarbon Copy 32"
endif
IF FILE('&ARCHIVO')
RUN '&ARCHIVO'
ENDIF


LO TENGO EN UN FORMULARIO QUE SE EJECUTA AL FINALIZAR UN PROCESO DE CIERRE, EL CODIGO HACE LO QUE QUIERO , ES DECIR, ME ABRE EL PROGRAMA CCW32.EXE, EL PROBLEMA ES QUE ME DEJA LA VENTANA DE DOS ABIERTA EN COLOR AZUL, Y NO SE CIERRA HASTA QUE CIERRO EL PROGRMA CCW32.EXE.

EL OBJETIVO ES DEJAR ABIERTO EL CCW32.EXE, PQ ES EL PROGRAMA QUE SE USA PARA ESTABLECER UNA CONEXION VIA MODEM.. PERO COMO PUEDO HACER PARA NO TENER EL PROBLEMA DE DOS EN COLOR AZUL ??????
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:COMO PUEDO LLAMAR UN EXE.???

Publicado por sergio (737 intervenciones) el 21/04/2008 21:02:09
Cuando te abra esa ventana de dos, con boton derecho vas a las propiedades de la ventana y busca una opcioon que tiene para que esa ventana no aparezca, no recuerdo bien que opcion es , pero busca por ese lado
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:COMO PUEDO LLAMAR UN EXE.???

Publicado por beatriz (88 intervenciones) el 21/04/2008 22:15:41
hola, yo ejecuto desde mi aplicacion a winword.exe o al acrobat....abro archivos en word o formato pdf en una ruta especifica, entonces implemente este codigo..utilizando el comando Run:

&&&&&&&Rutina para el enlace de las supervisiones en formato PDF y en formato word
ON ERROR DO c: ramitesprgvalida_ruta
LOCAL A
RUTA_DOCU_C=RUTA_SUPERVI+PC.EXPEDIENTE &&&esta ruta define la carpeta denominada como el nombre del expediente
IF DIRECTORY('&ruta_docu_c')
SET DEFAULT TO &ruta_docu_c
A=GETFILE('*','','Abrir Supervision',0,'Abrir Supervisión')&&¶ ver todos los archivos
IF !EMPTY(A)
DO CASE
CASE RIGHT(A,3)="PDF"
R_TOTAL='C:ACROBATREADERACRORD32.EXE '+ A &&&Ruta para listarlos en pdf
RUN /N3 &R_TOTAL
&&&Rutina de manejo del error si el equipo del usuario tiene instalado el acrobat en otra Ruta
ON ERROR
CASE RIGHT(A,3)="DOC"
R_TOTAL=MRUTAWORD+'Winword '+ A &&&Ruta para listarlos en pdf
RUN /N3 &R_TOTAL
&&&Rutina de manejo del error si el equipo del usuario tiene instalado el acrobat en otra Ruta
ON ERROR
endcase
ENDIF
ELSE
MESSAGEBOX("NO existe el Directorio para este expediente",48,"No existe archivos para abrir")
ENDIF

espero te sirva
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:COMO PUEDO LLAMAR UN EXE.???

Publicado por DOUGLAS (5 intervenciones) el 22/04/2008 00:10:20
Este ejemplillo tal ves te ayude.
Si quieres algo mas fuerte me avisas.
fijate en la funcion shellexec. es facil.....

Douglas
Saludes from Nicaragua

archbase = SYS(5)+SYS(2003)+"MANUALESMANUAL_U.PDF"

IF .NOT. FILE(archbase)
= MESSAGEBOX( ;
"No se encontro el documento que intenta abrir, revise la ruta por favor", ;
16, "No se encontro "+archbase)
RETURN
ENDIF
estoy = SYS(5)+SYS(2003)+"manual_U.PDF"
COPY FILE &archbase TO &estoy
shellexec(estoy)


ENDPROC
**

FUNCTION ShellExec
LPARAMETERS lclink, lcaction, lcparms
lcaction = IIF(EMPTY(lcaction), "Open", lcaction)
lcparms = IIF(EMPTY(lcparms), "", lcparms)
DECLARE INTEGER ShellExecute IN SHELL32.dll INTEGER, STRING, ;
STRING, STRING, STRING, INTEGER
DECLARE INTEGER FindWindow IN WIN32API STRING, STRING
RETURN shellexecute(findwindow(0, _SCREEN.caption), lcaction, ;
lclink, lcparms, SYS(2023), 1)
DELETE FILE &estoy
ENDFUNC
*--
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