PDA

Ver la Versión Completa : shellexecute en linux


anubis
19-04-2013, 23:26:34
Hola de nuevo,

Sigo cambiando cosas en mis prgramas windows pasados a linux con lazarus.

Algunas cosas ya las he resuelto, pero me he topado con la shellapi, asi que shellexecute no existe.

Encontre SysUtils.ExecuteProcess, pero aqui no se que puedo poner.

Vereis, tengo esta linea en lazarus windows:

ShellExecute(0, 'open', PChar(TIPO), Nil,Nil, SW_SHOWNORMAL); // abrimos externamente con el programa predeterminado.

Proviene despues de asignar un campo blob para que lo abra, y en windows funciona de pelos, en linux lo que solicita es mas bien abrir un ejecutable externo, pero no se como aplicarlo :(.

Tambien esta fpsystem y fpexecve, pero tampoco soy capaz de cambiar la línea que tengo arriba por algo que funcione.

Se que este foro es mas de windows que linux (aunque si estan los dos) pero a ver si alguno igual me orienta.

saludos

anubis
20-04-2013, 00:07:07
Hola, como no puedo editar el mensaje, me respondo a mi mismo

Despues de andar buscando y buscando, encontre esta simple sentencia:

opendocument(tipo);

Donde tipo es el nombre del archivo que quiero abrir.

Saludos

rretamar
20-04-2013, 01:22:18
Creo que luego de pasado un cierto tiempo ¿ minutos ? de creado un mensaje, el usuario no lo puede editar.

Tener una aplicación compilada que pueda ser portada entre Windows y Linux con mínimos cambios es una maravilla, y Free Pascal + Lazarus lo hacen posible.

pedrolazarus
20-04-2013, 03:00:05
Hola, como no puedo editar el mensaje, me respondo a mi mismo

Despues de andar buscando y buscando, encontre esta simple sentencia:

Código Delphi [-] (http://www.clubdelphi.com/foros/#)opendocument(tipo);


Donde tipo es el nombre del archivo que quiero abrir.

Saludos

Mejor es tprocess y no estas cambiando codigo ya que es multiplataforma

anubis
20-04-2013, 03:32:05
Ah y con tprocess como se haria, no abrir una aplicacion sino mas bien, un documento, imagen, ...

pedrolazarus
20-04-2013, 03:47:40
http://wiki.freepascal.org/Executing_External_Programs/es