Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Ejecutar un archivo.exe desde mi aplicacion CLX (https://www.clubdelphi.com/foros/showthread.php?t=17271)

ctronx 31-12-2004 19:01:37

Ejecutar un archivo.exe desde mi aplicacion CLX
 
Saludos como puedo ejecutar un archivo.exe desde mi aplicacion, ya lo intente usando winexec, pero no me funciona ya que mi aplicacion es CLX

ctronx 03-01-2005 16:14:35

Ayuda, sigo sin saber como puedo ejecutar un archivo.exe desde mi aplicacion, ya lo intente usando winexec, pero no me funciona ya que mi aplicacion es CLX.

Gracias de antemano por la ayuda que puedan darme.

ctronx 04-01-2005 16:26:22

Sigo sin encontrar nada, espero alguien me pueda ayudar.

ctronx 06-01-2005 16:20:02

Sigo sin encontrar nada, espero alguien me pueda ayudar.

ctronx 10-01-2005 23:14:48

Sigo sin encontrar nada, espero alguien me pueda ayudar.

ctronx 14-01-2005 03:11:06

Ya me estoy dando por vencido, Sigo sin encontrar nada, espero alguien me pueda ayudar.

ctronx 24-01-2005 16:42:47

creo que ya me di por vencido no e podido llamar a un ejecutable en windows, usando una aplicacion CLX creada en delphi 7

roman 24-01-2005 17:46:27

Vamos a ver, yo de Kylix no sé nada, pero según la documentación puedes hacer uso de condicionales del compilador para código específico para una u otra plataforma. Ejecutar un exe sólo podrás hacerlo en Windows, así que pienso que podrías usar algo como:

Código Delphi [-]
{$IFDEF MSWINDOWS}
WinExec(...);
{$ENDIF}

// Saludos

Gydba 24-01-2005 18:59:51

Hola,

En cuanto a tu pregunta debo decir que podrías utlizar las condiciones de compilación, como bien dice el amigo Roman, pero recordá que sobre Kylix no se pueden ejecutar los .EXE conocidos de Window$ al ser un SO completamente diferente, por lo cuál deberías hacer un llamado el ShellExec del propio entorno (Libc.system) generando una línea de comandos para utilizar al Wine que emularía el uso de windows con tu app .EXE.

En la web de Borland tenés un artículo sobre ejecuciones externas:
http://community.borland.com/article...,27500,00.html

No sé si se entendió algo...

ctronx 24-01-2005 21:38:38

El problema consiste en que no uso Kylix, sino que desde delphi-7 empece mi aplicacion con File-New-CLX Applications, pero uso Win XP , practicamente no e tenido problemas ya que buscando y probando simpre encuentro la manera o la equivalencia de hacerlo con una CLX Applications en windows, pero ahora que tengo la necesidad de mandar llamar otro ejecutable desde mi aplicacion No e podido lograrlo de las formas convencionales como en una aplicacion normal VclDelphi.

Espero me puedan iluminar y de antemano muchas, muchas gracias por la ayuda que puedan darme.

roman 24-01-2005 21:45:07

Cita:

Empezado por ctronx
El problema consiste en que no uso Kylix

Pues en este caso, aunque puede ser una tarea larga y tediosa yo optaría por quitar toda dependencia de clx, cambiando los controles que sea necesario.

// Saludos

ctronx 24-01-2005 23:34:38

Mi aplicacion ya es un poco grande y quiero en un futuro poder migrar mi aplicacion a Linux, y si quito las dependencias de CLX no podre lograr esto.

Practicamente el problema por el momento es ejecutar un archivo .exe en windows, pero despues con las modificaciones necesarias poder hacer lo mismo en CLX pero ya en Linux mandar llamar un ejecutable en otra ubicacion.

Ya no quiero que el tamaño de mi aplicacion siga creciendo y quiero hacer lo que falta en otros programas pero como los mando llamar desde mi aplicacion original CLX.

roman 25-01-2005 02:09:23

Ok. Pero ¿intentaste la compilación condicional?

No tengo manera de probarlo en Kylix pero acabo de crear una aplicación CLX con una llamada a WinExec y no me da problemas. La cláusula uses se ve así:

Código Delphi [-]
uses
{$ifdef mswindows}
  Windows,
{$endif}
  SysUtils, Types, Classes, Variants, QTypes, QGraphics, QControls, QForms,
  QDialogs, QStdCtrls;

y en el OnClick de un botón tengo:

Código Delphi [-]
{$ifdef mswindows}
WinExec('c:\windows\notepad.exe', SW_SHOW);
{$endif}

// Saludos

ctronx 25-01-2005 09:21:16

Muchisimas gracias, ya funciono de manera correcta, en la prueba anterior estaba usando mal la sintaxis de la compilacion condicional y tenia un error , ya probe la compilacion condicional ahora de forma correcta y ya no tuve problemas.

Gracias.


La franja horaria es GMT +2. Ahora son las 14:04:34.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi