Hola, yo estoy haciendo una aplicación con Delphi 7 y me interesa garantizar que mi aplicación se ejecute una sola vez, luego de darle doble clic a un fichero ya asociado con esta en el registro del sistema.
Me explicaré mejor. Yo hago esto hasta ahora:
Código Delphi
[-]
if (ParamCount <> 0)
then
begin
ArchivoEnteroAbierto:= ParamStr(1);
....
....
....
end;
Yo utilizo ficheros de extensión *.sim, los cuales dentro contienen imagen, datos, etc. Pues bien, yo a través del instalador de mi aplicación logro asociar estos ficheritos a mi aplicación, y cuando le doy doble clic pues esta se ejecuta, se carga la imagen, se emplean los datos, etc, y al parecer todo ok, pero existe un gran problema.
El problema es que si yo le doy doble clic a otro fichero *.sim, pues me abre otra instancia de mi aplicación, y eso yo no quiero que ocurra.
¿Cómo puedo solucionar esto? He leido algo acerca del empleo de un ¿mutex? La verdad es que no sé nada de ello.
Preferiría que:
- No se levantase otra instancia de mi aplicación.
- Que la que ya estaba abierta detectara que se le dio doble click en otro fichero sim y que cargase en ella misma el nuevo fichero *.sim (al cual se le acaba de dar doble clic)
Si esto no es posible pues me conformaría con que:
1. No se levantase otra instancia de mi aplicación.
Gracias por adelantado.
Bye.
Reinier