La Web del Programador: Comunidad de Programadores
 
    Pregunta:  4565 - CLIENTE-SERVIDOR
Autor:  Lenys Rangel
Desarrolle un sistema bajo la filosofia de Multiusuario, durante la pruebas todo me salió bien, pero cuando fui a instalarlo, el Cliente me sugirio que e instalara el Sistema en un Servidory que de ahí se conectaran todos los demas usuarios (clientes). El problema está en que cada vez que un usuario trata de entrar al sistema da un error: Falta un ddl de Visual Fox Pro y no se puede ejecutar.

  Respuesta:  angel gonzalez
no batalles.................. coloca los archivos vfp*r.dll y vfp*enu.dll en tu carpeta principal del sistema y listo cada vez que entre un usuario este donde este encontrara los DLL sin problemas te funcionara tanto para una maquina como en red sin necesidad de instalar el fox en cada maquina

  Respuesta:  Juan Carlos Flores
Creo que si ya tiene hecho tu programa ejecutable y quieres instalarlo en un servidor, toma en cuenta que debes de tner el runtime de VFP en cada maquina cliente, he aqui dos soluciones:

1. Instala VFP en cada maquina cliente.

2. Crea un CD de instalacion o disquette dese FVP conteniendo el Runtime (sique el wizard de crear una instalacion).

Si te decides por la primera opcion que es la que te recomiendo, puedes no comentar que dejas instalado VFP en la maquina y quita los accesos de Inicio/Programas/Visual Studio a fin de que no tengan acceso facil a la linea de comandos, y te permitira poder administrar tablas en cualquier maquina cliente en caso de que lo necesites.

Yo tengo todos mis programas y tablas en mi servidor (este no tiene nada instalado de VFP), me corre sin problema en todas las estaciones.

Suerte

  Respuesta:  Marga del Pino
Si el problema es que falta una dll por registrar en el servidor el sistema tampoco se va a ejecutar fuera de ambiente multiusuario (una aplicación corriendo en una sola máquina). Recuerda que además de ejecutar las .dll hay que registrarlas.

No soy especialista en tecnología cliente servidor y humildemente te diré lo que conozco por teoría, y que he encontrado en literatura una y otra vez, y me han repetido los profesores, otros con más experiencia podrán darte otra idea. Yo solo he hecho una base de datos SQL Server 7 de ejemplo como tarea de un curso y luego de definirle procedimientos almacenados, me he conectado a ella mediante un proyecto VFP, y he logrado activar procedimientos almacenados de actualización utlizando las funciones SQLCONNECT() y similares, además de visualizar la información mediante vistas remotas.

En primer lugar la arquitectura cliente servidor debe guiarse por la regla de aligerar el tráfico en la red, y tu lo estás haciendo "pesado" al poner el ejecutable o aplicación en el servidor, este debe estar corriendo en cada una de las estaciones de trabajo, o sea ser instalado en cada una de ellas, la base de datos estará en el servidor y además en cada estación de trabajo un proyecto VFP con la conexión VFP y las vistas remotas a la base de datos en el servidor. Redistribuye el sistema de esta manera y prueba desde una sola máquina, haciendo la conexión ODBC necesaria, que debe estar incluida en el proyecto. Recuerda además que en ambiente multiusuario se trabaja sobre vistas remotas de la BD y no directamente sobre las tablas, y que esas vistas remotas se basan en la ODBC mencionadas.

Consulta con alguien de experiencia si no es más factible que el motor de la BD sea SQL Server y no VFP como creo entender que haces en tu caso.
Suerte.