Bienvenido(a), Visitante. Favor de ingresar o registrarse.

Ingresar con nombre de usuario, contraseña y duración de la sesión

Foros del Club

Páginas: [1]   Ir Abajo
  Enviar tema  |  Imprimir  
Autor Tema: Ayuda para abrir archivos  (Leído 1080 veces)
0 Usuarios y 1 Visitante están viendo este tema.
freedman
Wizard
****

Prestigio: 0
Desconectado Desconectado

Sexo: Masculino
Mensajes: 8



« en: 01/03/2008, 10:37:13 »

hola, tengo una consulta para abrir archivos.
hice un programa que tiene una ventana con una barra de herramientas (archivo, edicion, ayuda, etc)

la duda que tengo es como hacer para abrir por ejemplo desde el menú Ayuda --> Manual de usuario, el archivo de ayuda.
yo hice:

void __fastcall TForm1::ManualdeUsuario1Click(TObject *Sender)
{
        system("manual.pdf");
}

y funciona, pero queda abierta la consola de windows (cmd), y no se cierra hasta que el usuario cierre el acrobat (o el programa que use para ver los pdf).

intenté haciendo:

void __fastcall TForm1::ManualdeUsuario1Click(TObject *Sender)
{
        system("manual.pdf");
        system("exit");
}

pero no me funcionó, sigue abierta la consola...
como puedo hacer para abrir un archivo, sin que quede abierta la consola (o que se abra y cierre sola) ??
En línea
freedman
Wizard
****

Prestigio: 0
Desconectado Desconectado

Sexo: Masculino
Mensajes: 8



« Respuesta #1 en: 03/03/2008, 11:34:21 »

Tambien probé con los comandos ShellExecute y WinExec, pero no los pude hacer andar (solo pude abrir .exe, pero yo quiero abrir archivos .pdf y .chm)
En línea
CID
Administrador
Legend
*****

Prestigio: 22
Desconectado Desconectado

Sexo: Masculino
Estudiante de: Arte de la informática
Título universitario: Programador
Profesión: Desarrollador
Mensajes: 1136



WWW
Lenguajes:
Varios
Bases de datos:
Varios
« Respuesta #2 en: 03/03/2008, 18:07:54 »

Hay que usar la API ShellExecute, con el parametro lpOperation en OPEN, y abre el pdf con el ejecutable asociado, por ejemplo el acrobat.

Código
HINSTANCE ShellExecute(      
   HWND hwnd,
   LPCTSTR lpOperation,
   LPCTSTR lpFile,
   LPCTSTR lpParameters,
   LPCTSTR lpDirectory,
   INT nShowCmd
);
 

Ej:

Código
ShellExecute(NULL, "open", "C:\\archivo.pdf", NULL, NULL,0);

Saludos
En línea

freedman
Wizard
****

Prestigio: 0
Desconectado Desconectado

Sexo: Masculino
Mensajes: 8



« Respuesta #3 en: 08/03/2008, 13:50:59 »

ok, pude solucionar el problema.
muchas gracias.

supongo que se puede cerrar el hilo.
En línea
Foros del Club
   

 En línea
Páginas: [1]   Ir Arriba
  Enviar tema  |  Imprimir  
 
Ir a: