Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-10-2003
ing_alsaac ing_alsaac is offline
Miembro
 
Registrado: may 2003
Ubicación: Querétaro, México
Posts: 29
Poder: 0
ing_alsaac Va por buen camino
Talking como "actualizar" una unidad de red

Hola a Todos:
tengo una aplicación en red con la base de datos en el servidor y con unidades de red en los clientes para una conexion odbc, hasta ahi no hay problema pero a veces el servidor no se "enciende" primero que los clientes y cuando los clientes (que tienen Win98) buscan la unidad de red al iniciarse obviamente les manda un error al conectar la unidad de red, yo tengo en la aplicación que cuando se inicie, antes de conectar a la base de datos busque el archivo de base de datos en la unidad de red y si no lo encuentra quiere decir que no esta "activo" el servidor, pero cuando se enciende el servidor no se actualiza el estado de la unidad de red a menos que entres al explorador y des 2click a la unidad para activarla, no puedo hacer lo mismo yo desde mi aplicación? o sea que si la opcion de mi aplicacion no encuentra el archivo "K:\base.mdb" trate de "refrescar" el estado de la unidad para ver si ya esta activa e iniciar la aplicación y si no pues en definitiva enviar un "El servidor o la unidad no estan conectados".
Como siempre y por siempre de antemano Gracias.
__________________
Saludos
Alonso
Responder Con Cita
  #2  
Antiguo 21-10-2003
Avatar de marcoszorrilla
marcoszorrilla marcoszorrilla is offline
Capo
 
Registrado: may 2003
Ubicación: Cantabria - España
Posts: 11.221
Poder: 10
marcoszorrilla Va por buen camino
Prueba con esta función del API.

The WNetAddConnection2 function makes a connection to a network resource. The function can redirect a local device to the network resource.

The WNetAddConnection2 function supersedes the WNetAddConnection function. If you pass a handle to a window that the provider of network resources can use as an owner window for dialog boxes, use the WNetAddConnection3 function.

DWORD WNetAddConnection2(

LPNETRESOURCE lpNetResource, // points to structure that specifies connection details
LPCTSTR lpPassword, // points to password string
LPCTSTR lpUsername, // points to user name string
DWORD dwFlags // set of bit flags that specify connection options
);

Un Saludo.
__________________
Guía de Estilo de los Foros
Cita:
- Ça c'est la caisse. Le mouton que tu veux est dedans.
Responder Con Cita
  #3  
Antiguo 22-10-2003
ing_alsaac ing_alsaac is offline
Miembro
 
Registrado: may 2003
Ubicación: Querétaro, México
Posts: 29
Poder: 0
ing_alsaac Va por buen camino
Talking

Ante todo gracias por haber respondido a mi pregunta pero la verdad no entendi como ingresar esa funcion a mi aplicacion, es una funcion? una variable? por lo que vi tengo que definir las demas funciones no (WNetAddConnection, WNetAddConnection3)? o llamarlas de alguna libreria? como lo pondrias en un ejemplo simple? si la unidad fuera "K:\" y no hay password ni username? y la maquina fuera \\servidor\basededatos\ = "K:\"
de todas formas muchas gracias.
__________________
Saludos
Alonso
Responder Con Cita
  #4  
Antiguo 22-10-2003
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Posteado originalmente por ing_alsaac
es una funcion? una variable?
Pues ya marcoszorrilla lo indicó: es una función.

La función se encuentra definida en la unidad Windows, que normalmente se incluye por defecto en cualquier formulario.

Aquí te va un ejemplo específico para lo que buscas:

Código:
var
  NetResource: TNetResource;
  NetResult: Cardinal;

begin
  NetResource.dwType := RESOURCETYPE_ANY;
  NetResource.lpLocalName := 'K:';
  NetResource.lpRemoteName := '\\servidor\basededatos';
  NetResource.lpProvider := nil;
  NetResult := WNetAddConnection2(NetResource, nil, nil, 0);
end;
Algunas valores de NetResult que te pueden interesar:
  • NO_ERROR - no hubo error, todo salió bien
  • ERROR_ALREADY_ASSIGNED - ya está asignada la unidad

Puedes encontrar más infromación en MSDN

// Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 12:46:19.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi