FoxPro/Visual FoxPro - UNA APLICACION NO VISIBLE...

 
Vista:

UNA APLICACION NO VISIBLE...

Publicado por ANGEL SOLORZANO... (100 intervenciones) el 03/12/2006 18:51:26
HE ELABORADO UN PROYECTO CON UNA PEQUEÑA BASE DE DATOS... PARA DARLE UNA ESPECIE DE SEGURIDAD AL CLIENTE.. HE QUERIDO HACER UNA APLICACION OCULTA Q INICIE AUTOMATICAMENTE CUANDO ARRANQUE WINDOWS Y Q HABRA LA BASE DE DATOS PARA Q DE ESTA FORMA CUALQUIER USUARIO DE LA PC NO PUEDE BORRAR NINGUNA TABLA... Y ESTO POR EL HECHO Q EL PROGRAMA OCULTO ESTA HACIENDO USO DE LA BASE DE DATOS POR LO Q LE DIRA Q NO PUEDE BORRARSE PQ ESTA UTILIZANDOSE POR OTRO PROGRAMA...

ADEMAS QUIERO Q EN DETERMINADO MOMENTO QUIERA CORRER EL COMANDO PACK.... EN ALGUNA PARTE DEL MENU... PUEDA CERRAR LA APLICACION OCULATA, DARLE PACK A LAS TABLAS Y LUEGO VOLVER A ABRIR EL PROGRAMA OCULTO PARA Q LAS TABLAS QUEDEN PROTEGIDAS....

PODRIA ALGUIEN AYUDARME A HACER ESTO.... O ENVIARME UN MANUAL O ALGUNA REFERENCIA DE CODIGO PARA TENER UNA NOCION DE COMO ESTO SE HACE?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:UNA APLICACION NO VISIBLE...

Publicado por DOUGLAS (297 intervenciones) el 04/12/2006 14:48:04
Bien, yo creo que ahora los sistemas operativos Server. ya traen algo similar para proteger las bases de datos.
..

Pero con solo que en el programa que arranques digites este codigo. se pondria visible.

APPLICATION.VISIBLE = .F.

CODIGO

APPLICATION.VISIBLE = .T.

Pero una pregunta, me imagino que tienes algun parametro que cuando apaguen el Server o detecte que todos los usuarios salerion la aplicacion debes de borrarla de la memoria de windows. ya que queda en memoria y si esta ocupando las tablas o bases de detos en shared. para que nadie la pueda borrar estas se te puenden corronper si no las cierra debidamente.

bye
Douglas
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:UNA APLICACION NO VISIBLE...

Publicado por jorge (423 intervenciones) el 04/12/2006 19:13:33
Hola, yo creo que lo que pretendes es un poco delicado de controlar, existen varios riesgos como por ejemplo, que se corrompa la base de datos.
me surgen varias dudas:
que pasaria si se apaga la computadora ?, y si se apaga de forma anormal, es decir, un apagon de corriente ?
como controlarias si es multiusuario ?.
No seria mejor instruir al usuario que realice sus respaldos de forma periodica ?
en cuanto al pack, lo mas recomendable es que sea un proceso especial donde puedas validar si hay algun usuario conectado para relizarlo, ya ves que tienes que abrir de forma exclusiva la BD...
de cualquier forma piensa bien, y toma en cuenta que hay situaciones que no podras controlar. y si lo haces me dices como.. ...
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:UNA APLICACION NO VISIBLE...

Publicado por Ernesto Hernandez (4623 intervenciones) el 04/12/2006 21:00:31
ADEMAS QUIERO Q EN DETERMINADO MOMENTO QUIERA CORRER EL COMANDO PACK.... EN ALGUNA PARTE DEL MENU... PUEDA CERRAR LA APLICACION OCULATA, DARLE PACK A LAS TABLAS Y LUEGO VOLVER A ABRIR EL PROGRAMA OCULTO PARA Q LAS TABLAS QUEDEN PROTEGIDAS....

Y como le dirias a tus usuarios que necesitas cerrar las tablas para poder hacer el uso exclusivo en tu rutina donde ejecutartas el PACK ??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:UNA APLICACION NO VISIBLE...

Publicado por ANGEL (100 intervenciones) el 04/12/2006 21:54:37
LA APLICACION NO ES MULTIUSUARIOS.....
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

RE:UNA APLICACION NO VISIBLE...

Publicado por jesus cordero (405 intervenciones) el 07/12/2006 13:56:29
espero que te sirva:

*****
**** CREO FUNCION PARA EJECUTAR EL PROGRAMA O BAT DE DOS
****
LOCAL loWshShell
loWshShell = CreateObject("WScript.Shell")
****
**** EJECUTO UN BAT DE DOS Y LO DEJO EN MEMORIA
****
loWshShell.Run("lp.bat", 1, .F.)
****
**** CONTINUO REALIZANDO CUALQUIER OPERACION EN DOS
****
WAIT " ** Programa en memoria - precione cualqueir tecla para cancelar ** "
***
****
**** CANCELO EJECUCION DEL PROGRAMA EN DOS
****
loWshShell.Run("C:\WINDOWS\SYSTEM32\TASKKILL /F /IM CMD.EXE", 1, .F.)
****
WAIT " ** Programa Cancelado ** "
****
OBSERVACIONES: Pasando .f. en el tercer parámetro del método RUN le
indica a VFP que no esperar hasta que el EXE llamado termine.
puedes sustituir lp.bat por cualquier ejecutable. en la cancelacion el
ejecutable "cmd.exe", lo debes replazar por el nombre del ejecutable.
se cancela "cmd.exe" porque es un BAT. (Nota para windows xp)

Jesus Cordero
Caracas - Venezuela
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar