Hola:
Cómo puedo evitar que un ejecutable se cargue dos o más veces en memoria?. Que solamente me permita mantener una instancia a la vez.
Gracias.
Hola:
Cómo puedo evitar que un ejecutable se cargue dos o más veces en memoria?. Que solamente me permita mantener una instancia a la vez.
Gracias.
Puedes almacenar un archivo temporal en el disco de la estación (si no existe, lo creas),El cual bloqueas exclusivo cuando entras, si no te permite bloquearlo, es que ya está siendo utilizado (ya activastes una vez)
Se que es un poco primitivo, pero trabaja para mi.
IF IsExeRunning(cFileName(GetModuleFileName(GetInstance()))) //cFileName(HB_ARGV(0))
MsgStop("Programa ya se está ejecutando!"+CRLF+CRLF+"Este programa no permite multiples instancias!")
QUIT
ENDIFSaludos metaldrummer:
Hazlo más facil, agrega estas lÃneas en tu codifo fuente:
Function Main()
IF IsExeRunning( cFileName( HB_ARGV(0) ) )
MsgStop( "¡¡¡ ERROR CRITICO !!!"+CRLF+CRLF+"No es posible cargar más de 1 copia del Programa en su PC "+","Mensaje del Sistema")
QUIT
ENDIF
Return nil
Probado
, asì no usas ninguna variable que cualquier usuario "escurridiso" pueda modificar y entrar cuantas veces quiera..
Espero te sirva.
Saludos...
I.S.C. Victor Daniel Cuatecatl Leon
Soluciones y Desarrollo de Software Empresarial
gracias por las respuestas!!!!
funciona de mil maravillas.
Saludos
Consultas sobre ado soy todo oÃdos
Mil gracias nuevamente