FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Una funcion que me diga si un programa esta abierto
Saludos, me gustaría una función para saber si un programa está siendo ejecutado o no (en este caso el microsoft office word 2007), he buscado por el foro y no lo encuentro.
Muchas gracias.
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
|
#2
|
|||
|
|||
No Conozco Una Funcion Como La Que Necesitas, Sin Embargo, Cuando Tuve Que Hacer Ese Trabajo La Solucion Que Encontre Fue:
* Establecer Mi Lista De Programas Que Necesita Cononcer Si Estaban Corriendo. * Crear Una Matriz Que Contenia Los Programas Y Sus Correspondientes Identificadores De Proceso * Cuando Necesita Saber Si Un Programa Estaba Corriendo Solamente Accedia Al Sistema Operativo Y Checaba Si Estaba Corriendo El Proceso Que Se Habia Especificado. ( Si Tienes Un Poco De Miedito De Involucrarte Con El S.o., Entonces Puedes Intentarlo Con El Administrador De Tareas, Claro Si Usas Windows) |
#3
|
||||
|
||||
Miedo no... pero la cosa es que no se hacer nada de eso en delphi :-(
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
|
#4
|
||||
|
||||
He encontrado esta función:
Código Delphi [-]FindWindow(Nil, Pchar('nombre de ventana')) que me devuelve un boolean si la ventana con título: 'nombre de ventana' se esta ejecutando, lo malo es que quiero saber si hay algun documento del word que esté activo, y los documentos words al abrirse ponen su ventana como: Código Delphi [-] ('nombre de archivo guardado' + ' - Microsoft Word') ¿Cómo podría poner la condición para que me detectase si ' - Microsoft Word' está en la barra del título? es decir: Código Delphi [-]FindWindow(Nil, Pchar( '*' + ' - Microsoft Word')) Siendo * cualquier cosa. ¿Me he explicado? gracias.
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
|
#5
|
||||
|
||||
Hola,
http://www.clubdelphi.com/trucos/index.php?id=388 http://www.clubdelphi.com/foros/showthread.php?t=40902 Cambia ParamStr(0) por la ruta completa del programa que buscas. Y si solo quieres usar el nombre del ejecutable cambia la función GetModuleFileNameEx por GetModuleBaseName. Última edición por seoane fecha: 03-10-2007 a las 17:14:40. Razón: Error ortografico |
#6
|
||||
|
||||
gracias ahora mismo lo pruebo
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
|
#7
|
||||
|
||||
¿Quieres decir esto? Estoy bastante perdido...
Me da error: tipos incompatibles cardinal-string.
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
|
#8
|
||||
|
||||
¿Leíste el código que te pase? ¿En que parte parte aparece esa linea?
|
#9
|
||||
|
||||
El código esta en el segundo enlace que me has puesto:
http://www.clubdelphi.com/foros/showthread.php?t=40902 y he hecho lo que he entendido (que seguro que esta mal) sustituir el parametro 0 por el nombre del programa y cambiar GetModuleFileNameEx por GetModuleBaseName. Te importa ponerme como quedaría? gracias por tu paciencia.
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
|
#10
|
||||
|
||||
Perdona, el corrector ortografico hizo de las suyas en mi mensaje.
Cambio PamaStr(0) por Parametro 0 El codigo quedaria asi:
|
#11
|
||||
|
||||
MUUUUUUUUUUUUUUUUUUUUUUUCHAS GRACIAS jeje ahora ya me va de lujo :-)
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
|
#12
|
||||
|
||||
Pos no, no me va :-( llamo a la función y no me muestra nada :-(
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
|
#13
|
|||
|
|||
sobre form
Hola, he leido alguno de tus respuestas y creo que me podrias ayudar.
Como puedo saber en tiempo de ejecucion si un form esta activo o abierto? Y otra pregunta, estoy desarrollando una aplicación de gestion empresarial. Que es mejor trabajar con ShowModal o no? Un saludo Fran |
#14
|
||||
|
||||
Cita:
A mi me preguntas? no tengo ni idea, lo siento macho :-(
__________________
Explicate como si fuese tonto, soy nuevo en esto de hacer programas!!!! XD
|
#15
|
|||
|
|||
Si te refieres a un form de los que creas con Delphi, me parece que lo puedes hacer checando la propiedad 'Showing' que te devuelve true si esta activo o false si no lo esta.
por ejemplo: if tuFormulario.Showing then begin //lo que vas hacer si el formulario esta activo end else begin //lo que vas hacer si el formulario NO esta activo end; Con respecto a tu 2a. pregunta, usarlo o no depende de la disponibilidad de funciones, procesos, etc., que quieras que tu aplicación proporcione. |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
ClientdataSet como saber si esta abierto? | Coco_jac | Varios | 4 | 13-04-2012 20:36:43 |
Como averiguar si una unit o datamodule ya está abierto | jjoliveras | OOP | 2 | 20-06-2007 12:28:56 |
Error:512 El motor de informes no está abierto | Osorio | Impresión | 0 | 15-03-2007 23:17:40 |
Determinar si un archivo de texto esta abierto | Ricardo León | Varios | 0 | 09-08-2005 17:34:28 |
Saber si esta abierto un documento Word | Investment | Servers | 2 | 13-05-2004 13:02:26 |
|