Pregunta: | 1152 - IMPEDIR REENTRADA A UN PROGRAMA |
Autor: | fernando quintanilla alarcon |
Quisiera poder evitar que por error o por cualquier otro motivo, se ejecutara 2 veces el mismo programa (mi programa) en el mismo ordenador. el lenguaje en que está hecho es Visual Fox Pro 5. Gracias |
Respuesta: | Luis Barrantes |
Para imprdir que un usuario entre dos veces en una misma pantalla o programa, el nombre del formulario y el name deben ser iguales.
Copia la siguiente instruccion en el menu o donde ejecutes la invocación del programa; IF wexist("miformulario") messagebox("Formulario en uso",48,"Mensaje del sistema") ELSE DO FORM miformulario ENDIF buena suerta y cuentas como te fue. ""shamman |
Respuesta: | leonardo olivares |
If _EstaActiva( "nombre ventana principal" ) Then _screen.visible=.f. =MessageBox("solo si quieres") QUIT EndIf Function _EstaActiva( cCaption ) Declare Integer FindWindow IN Win32Api; String cNULL, ; String cWinName Return FindWindow(0, cCaption ) # 0 EndFunc *** EOF rústica pero funciona |
Respuesta: | Xavi |
Tienes que utilizar la API Findwindows, la cual te indica si una aplicacion ya esta en uso. Si revisas el apartado de Biblioteca de Temas-Utilización de algunas API´s en Visual Basic, veras el codigo que necesitas. Saludos |