FoxPro/Visual FoxPro - compartir un ejecutable.

   
Vista:

compartir un ejecutable.

Publicado por natalia (1 intervención) el 05/10/2009 16:47:32
Hola a todos, tengo una consulta he creado un pequeño sistema sobre un test, yo tengo 11 pc en la cual una funciona como mi servidor, el punto es que he hecho un ejecutable y quiero compartir eso en las otras maquinas(un acceso directo) para que en esas 10 maquinas puedas ejecutar el sistema y una ves hecho el test guardar. pero al momento de querer ejecutar el sistema de otra maquina(solamente compartiendolo) me sale un error diciendo que faltan librerias o algo asi. pero yo en el sistema he colocado las librerias. como puedo hacer para que funcione??

Espero su ayuda, gracias
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:compartir un ejecutable.

Publicado por ALBERTO JUAN FRANCISCO (399 intervenciones) el 05/10/2009 18:21:53
PARA MI DEBES TENER UN ERROR EN EL PATH DONDE ESTAN TUS TABLAS,
LO IDEAL ES MAPEAR EL DISCO C DEL SERVIDOR Y ENTRAR EN LOS DISTINTOS PUESTOS DE TRABAJO DESDE MI PC Y ENTRAS AL DISCO MAPEADO Y SELECCIONAS TU EJECUTABLE.
FIJATE EN PROPIEDADES DE TU ACCESO DIRECTO EN LAS TERMINALES SI ESTA BIEN LA RUTA DONDE BUSCAR EL EXE.
SALUDOS
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:compartir un ejecutable.

Publicado por andy (221 intervenciones) el 06/10/2009 00:48:06
Visual FoxPro es una herramienta que permite de una manera muy sencilla hacer
aplicaciones multiusuario. Primero debes definir e que equipo vas a montar la base de datos(en red por supuesto), luego, en la aplicación solo debes bloquear el registro cuando lo quieres actualizar(modificar o eliminarlo), esto con la intención de que otro
usuario no trabaje sobre el mismo registro, para darte un ejemplo sencillo:
Imagina una tabla "clientes" ubicada en la carpeta "c:\datos\", esta carpeta debe estar compartida en esa PC(donde están los datos, seria EL SERVIDOR) y luego desde otra pc(donde está el programa, serian las terminales) debes conectarte a la pc de datos por Mi Pc, Conectar a Unidad de Red(conectala en la unidad lógica "Z" para que funcioen mejor el ejemplo).
Luego de establecida la conección entre los 2 equipos, procedes a escribir en el inicio de tu aplicación lo siguiente: "Set default to z:\(Carpeta donde estan los datos)", con esta instrucción le estás indicando a la aplicación la ubicación de los datos, a partir de ese momento si tu dices "use clientes", ya el programa sabe cual tabla va a abrir.
Cuando estas actualizando la tabla, utiliza la función RLOCK(), esta devuelve verdadero cuando puede bloquear un registro, y el comando UNLOCK que desbloquea el registro, ejemplo:

sele clientes
locate all for codcliente=thisform.text1.value
if found()
if rlock()
replace codcliente with thisform.text1.value
replace nomcliente with thisform.text2.value
unlock
endif
endif

Debes tener en cuenta es que en el archivo de inicio de tu sistema, debes establecer una cesion de datos en red,
para ello es conveniente utilizar los siguientes seteos:

set exclusive off
set refresh to 1
set reprocess to automatic
SET MULTILOCKS ON
DataSession=2

Ten en cuenta que para poder hacer ZAP, PACK o REINDEX deberas abrir las tablas en modo exclusivo, por ejemplo:

use mitabla exlusive
pack

Yo trabajo de la siguiente forma, mi sistema tiene subcarpetas \DATOS y \TEMP, en ella guardo las tablas compartidas y las tablas temporales respectivamente. Luego instalo la totalidad de la aplicacion en cada maquina, mapeo la red , por ejemplo z:\aplicacion\datos, establezco la ruta al SERVIDOR (o a la PC que hara las veces del mismo) con un SET PATH y lo guardo en otra tabla, donde tengo la configuracion general de la aplicacion.
A continuacion borro de las terminales la subcarpeta \datos y listo!!
Cada una de las terminales accede a los datos compatidos del servidor.
Espero haber ayudado.
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