FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Controlar / Vigilar Usuario que ejecutan el programa
Buenos días,
estoy haciendo un programa a ratos desde casa con delphi xe5 y access y cuando hago cambios lo subo por control remoto al servidor para evitar tener que acercarme a la oficina. Como tengo que borrar el .exe y meter el nuevo siempre necesito asegurarme que nadie lo está ejecutando. Teniendo en cuenta que el programa está en un servidor y es ahí donde accedo por control remoto. ¿Es posible saber si alguien está ejecutando el programa (y saber qué usuario es)? En caso de que sea posible, si alguien tiene el programa en ejecución ¿se podría cerrar? Gracias por vuestra ayuda Un abrazo
__________________
Mi proyecto paso a paso (Parte I) |
#2
|
||||
|
||||
Creo que si alguien lo está usando, no podrás borrarlo.
|
#3
|
||||
|
||||
Puedes tener una tabla de usuarios y su última fecha y hora de conexión.
También puedes poner una campo PERMITIR_CONEXION en la tabla de usuarios y un timer.
|
#4
|
||||
|
||||
Con firebird puedes consultar cuántos usuarios hay conectados a la base de datos, no sé si con access se puede.
|
#5
|
||||
|
||||
Lo que se suele usar en estos casos (como primera solución sencilla) es lo que se llama una lanzadera.
Es un programa que lo único que hace es ejecutar el tuyo (MIPROG.EXE), por ejemplo a partir de un parámetro a un fichero .INI. Cuando hay una actualización grabas la nueva versión de tu programa (con un nombre distinto o un directorio distinto) y lo único que tienes que hacer es cambiar las opciones de la lanzadera. A medida que los usuairo vayan saliendo y volviendo a ejecutar la lanzadera, sin darse cuenta estarán ejecutando la nueva versión.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#6
|
||||
|
||||
lo que hago yo es renombrar el programa actual en el servidor (lo deja hacer, pero no borrar), después subo la nueva versión, eso si que no tendrán la nueva versión hasta que ejecuten el programa nuevamente.
__________________
Manuel Muñoz L. Trabajando con delphi 7.0 , migrando sistema a Delphi XE8, matando BDE y pasando FIREDAC. |
#7
|
||||
|
||||
Hola.
Yo lo que hago es un poco bestia pero bastante efectivo. En un timer del formulario principal chequeo la existencia de un fichero determinado en la carpeta del programa, si existe directamente cierro el programa. De esta manera cuando necesites "echar" a todo el mundo fuera solo tienes que crear ese fichero y todos los programas abiertos se cerrarán al momento, luego lo borras o lo renombras, actualizas tu prograna y a volar. Saludos
__________________
Be water my friend. |
#8
|
||||
|
||||
En un srv windows se puede ver qué usuarios tienen abierto un fichero. Además, si eres administrador, puede echarles. Después podrías copiar tu nuevo ejecutable.
Si no recuerdo mal, se hace desde donde se administran los discos, los servicios, los usuarios, etc. pero no lo recuerdo bien y no tengo ningún srv a mano. Saludos
__________________
Cuando los grillos cantan, es que es de noche - viejo proverbio chino - |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
controlar tamaño del programa en ejecución | odiseeus | C++ Builder | 3 | 04-07-2013 13:20:05 |
Ejecutar y vigilar varios programas a la vez | Anel Hernandez | Varios | 3 | 23-01-2012 12:53:18 |
Timer Un programa para controlar cibers | douglas | OOP | 5 | 07-08-2007 21:20:54 |
Algún programa para controlar los cambios | David | Varios | 5 | 05-04-2007 19:21:22 |
controlar si mi programa se ejecuta | acrophet | Varios | 3 | 18-09-2003 16:46:36 |
|