FoxPro/Visual FoxPro - Problema con llamada a Programa Externo

   
Vista:

Problema con llamada a Programa Externo

Publicado por Juan (100 intervenciones) el 16/12/2014 14:46:57
Buenas amigos foreros

He creado una rutina en AutoIT para que se minimicen las ventanas que se están ejecutando en Windows en ese momento. He probado la rutina con el ejecutable independiente y ésta funciona, pero al usarla en Visual FoxPro no realiza la acción, no sé si es que hago mal la llamada. Yo lo hago así:

run /0 C:\CE\minimiza.exe

Llevo un par de horas probando otras soluciones como una que daba Walter Ojeda:

oShell = CreateObject("WScript.Shell")
oShell.Run("C:\CE\minimiza.exe", 0, .T.)

El resultado tuvo el mismo éxito, es decir, que no me hizo nada de nada. Estoy convencido que es una tontería, pero si alguien la ve que, por favor, me la indique
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

Problema con llamada a Programa Externo

Publicado por santiago (376 intervenciones) el 16/12/2014 16:59:02
Hola, he hecho llamadas antes a programas externos, para poder ayudarte primero necesito saber cuales son las instrucciones de "minimiza.exe" (en que esta hecho?), supongo que actúa sobre el entorno windows (que versión?), etc, etc.

Suerte.
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

Problema con llamada a Programa Externo

Publicado por Juan (100 intervenciones) el 17/12/2014 09:13:15
Gracias por el interés Santiago

En realidad en el Script únicamente he puesto la siguiente instrucción:
WinMinimizeAll()

Luego he creado el ejecutable con el AutoIt v3

Lo he probado en Win 8, 7 y dónde tengo el entorno de Visual FoxPro es un Windows Server 2008 Servipack 2. Utilizando el script por separado va perfectamente con las instrucciones de Fox no hace nada. Se te ocurre como puedo hacerlo?

Gracias por tu tiempo, Santiago
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

Problema con llamada a Programa Externo

Publicado por Juan (100 intervenciones) el 18/12/2014 10:30:08
Bueno gente, ya he solucionado el problema con unas funciones que me pasó un compañero programador de cuando la Universidad.

Estas funciones que no me ha dado autorización para publicar, lo que hacen es por un lado pasan la ruta dónde está el archivo a lenguaje de MS-DOS y, la otra ejecuta el comando bajo MS-DOS y así sí que funciona perfectamente.

A su vez he cambiado el script de AutoIT (éste por mi cuenta) dejándolo así:

Local $var = WinList()

For $i = 1 To $var[0][0]
; Sólo mostramos las ventanas que tienen título
If $var[$i][0] <> "" And IsVisible($var[$i][1]) Then
if WinActive("Mi Empresa","") Then
WinSetState("Atlantic","",@SW_MAXIMIZE)
Else
WinSetState($var[$i][1],"",@SW_MINIMIZE)
EndIf
EndIf
Next

Func IsVisible($handle)
If BitAND(WinGetState($handle), 2) Then
Return 1
Else
Return 0
EndIf

EndFunc

Espero que le sirva a alguien este script. Lo que realiza básicamente es minimiza todas las ventanas que no lleven en el Título una determinada palabra (en este caso me interesaba que fuera el de mi empresa) y maximiza las que sí tengan el título.

Un saludo gente
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