![]() |
![]() |
| Paypal | FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
|||||||
| Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
|
Herramientas | Buscar en Tema | Desplegado |
|
#4
|
||||
|
||||
|
Hola.
Para que el código sea reutilizable podés hacerte una función: Código:
void CreateProcessAndWait(AnsiString AppName, AnsiString Args)
{
STARTUPINFO StartInfo;
PROCESS_INFORMATION ProcInfo;
Trim(AppName);
Trim(Args);
Args = " " + Args;
memset(&ProcInfo, 0, sizeof(ProcInfo));
memset(&StartInfo, 0 , sizeof(StartInfo));
StartInfo.cb = sizeof(StartInfo);
if (CreateProcess(AppName.c_str(), Args.c_str(), NULL, NULL,
FALSE, CREATE_DEFAULT_ERROR_MODE, NULL, NULL, &StartInfo, &ProcInfo))
WaitForSingleObject(ProcInfo.hThread, INFINITE);
}
Código:
{
CreateProcessAndWait("C:\\Program Files\\Adobe\\Reader 9.0\\Reader\\AcroRd32.exe",
"C:\\PREVIEW.PDF");
...
}
Edito: Tené en cuenta que si la aplicación es de 16 bits lpApplicationName tendrá que ser NULL, mientras que el nombre de la aplicacion y los parámetros deberan ser especificados en lpCommandLine. (CREATE PROCESS function)
__________________
Daniel Didriksen Guía de estilo - Uso de las etiquetas - La otra guía de estilo .... Última edición por ecfisa fecha: 14-03-2012 a las 19:22:37. |
|
|
Temas Similares
|
||||
| Tema | Autor | Foro | Respuestas | Último mensaje |
| Detener dispositivo USB | Saindoft | API de Windows | 2 | 28-11-2008 08:26:37 |
| Detener el autonumerico | jzginez | Firebird e Interbase | 3 | 20-08-2006 03:27:51 |
| Detener ejecucion de programa | Luli | Varios | 8 | 04-05-2006 05:52:12 |
| Detener aplicacion | trex2000 | Varios | 4 | 22-04-2005 23:08:37 |
| Detener un bucle | lfidanza | Varios | 5 | 25-06-2003 00:36:14 |
|