IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

C++Builder Discussion :

Rafraichir un lecteur reseau


Sujet :

C++Builder

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 59
    Par défaut Rafraichir un lecteur reseau
    Bonjour,

    Je développe un logiciel de commande à distance, avec une base ACCES partagée. Pour lier la base de données, j'utilise un lecteur réseau qui pointe sur la BDD. Un fois que le PC à connecter le lecteur, je surveille le lien en vérifiant le chemin. Jusqu'ici, pas de soucie. Mais si le pc démarre sans le réseau (PB du WIFI), le lecteur ne se reconnecte pas. Il faut que je click dessus pour le connecter la première fois.
    Comment le forcer à retenter une connexion ?
    Comment le rafraichir ?

    Merci d'avance.

  2. #2
    say
    say est déconnecté
    Membre Expert
    Avatar de say
    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 176
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 176
    Par défaut
    tu connectes le lecteur de manière logiciel ou avec l'OS?

    perso, j'ouvre un lecteur rzo à l'ouverture de l' appli et je le fermes à la fermeture

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    59
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 59
    Par défaut
    Tu utilise quoi pour l'ouvrir au demarrage ?

    J'utilise l'ODBC cree avec xp. Je ne peux pas le creer sans lecteur. (pas si grave mais comment faire sans XP ?)

  4. #4
    say
    say est déconnecté
    Membre Expert
    Avatar de say
    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 176
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 176
    Par défaut
    Bon, bah ça a pas l'air d'être dans la FAQ...
    voici notre code :

    Annuler la connection
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    void  __fastcall MyTools::AnnulerConnection(String Lecteur,bool force){
       //DWORD Retour =
       WNetCancelConnection2(Lecteur.c_str(),CONNECT_UPDATE_PROFILE,force);
        //AffErreurLecteur(Retour);
    }

  5. #5
    say
    say est déconnecté
    Membre Expert
    Avatar de say
    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 176
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 176
    Par défaut
    Afficher les erreurs :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    //fonction d'affichage des erreurs
    void __fastcall MyTools::AffErreurLecteur(DWORD Retour)
    {
       char ErrorBufAZT[512];
       char NameBufAZT[512];
       String Msg;
       if(Retour!=NO_ERROR)
       {
          switch((int)Retour){
            case ERROR_ACCESS_DENIED:
                 MessageBox(NULL,"Accès réfusé","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            //case ERROR_ALREADY_ASSIGNED:
            //    MessageBox(NULL,"Lecteur réseau déjà utilisé","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            //break;
     
            case ERROR_BAD_DEV_TYPE:
                 MessageBox(NULL,"Ressource réseau incompatible","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_BAD_DEVICE:
                 MessageBox(NULL,"Lecteur réseau invalide","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_BAD_NET_NAME:
                 MessageBox(NULL,"Chemin réseau incorrect","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_BAD_PROFILE:
                 MessageBox(NULL,"Profile utilisateur incorrect","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_BAD_PROVIDER:
                 MessageBox(NULL,"Erreur provider","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_BUSY:
                 MessageBox(NULL,"Provider occupé","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_CANCELLED:
                 MessageBox(NULL,"Connection annulée","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_CANNOT_OPEN_PROFILE:
                 MessageBox(NULL,"Profile utilisateur introuvable","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_DEVICE_ALREADY_REMEMBERED:
                 MessageBox(NULL,"Lecteur déjà existant dans le profil utilisateur","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_EXTENDED_ERROR:
                 Retour=WNetGetLastError((unsigned long *)Retour,ErrorBufAZT,512,NameBufAZT,512);
                 Msg  = "Erreur étendue :" +IntToStr(Retour)+"\n"+StrPas(ErrorBufAZT)+"\n"+StrPas(NameBufAZT);
                 MessageBox(NULL,Msg.c_str(),"Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_INVALID_PASSWORD:
                 MessageBox(NULL,"Mot de passe incorrect","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_NO_NET_OR_BAD_PATH:
                 MessageBox(NULL,"Pas de réseau ou chemin réseau inconnu","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_NO_NETWORK:
                 MessageBox(NULL,"Pas de réseau détecté","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_NOT_CONNECTED:
                 MessageBox(NULL,"Lecteur non connecté","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_MORE_DATA:
                 MessageBox(NULL,"Pas assez de place pour les données","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_CONNECTION_UNAVAIL:
                 MessageBox(NULL,"Connection permanente non disponible","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_DEVICE_IN_USE:
                 MessageBox(NULL,"Lecteur réseau utilisée, déconnection impossible","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case ERROR_OPEN_FILES:
                 MessageBox(NULL,"Fichiers ouverts, déconnection impossible","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            case 1326:
                 MessageBox(NULL,"Erreur Logon : Authentification utilisateur incorrecte","Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
            break;
     
            //case 1314 : peut etre probleme de permission
            //case 87 :   invalid parameter
     
            default:
                 Msg =  "Erreur non repertoriée : code :"+ IntToStr(Retour);
                 MessageBox(NULL,Msg.c_str(),"Erreur lecteur réseau",MB_OK|MB_SYSTEMMODAL);
          }
       }
    }

  6. #6
    say
    say est déconnecté
    Membre Expert
    Avatar de say
    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 176
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 176
    Par défaut
    et surtout :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    /fonction connection lecteur reseau:
    bool __fastcall MyTools::ConnecteLecteurReseau(String Lecteur,String Chemin,String MotPasse,String Login)
    {
        NETRESOURCE NetResource;
        char LocalNameAZT[80];
        char RemoteNameAZT[80];
        char PassWordAZT[80];
        char LoginAZT[80];
        DWORD Retour;
     
        NetResource.dwType = RESOURCETYPE_DISK;
        NetResource.lpLocalName  = StrPCopy(LocalNameAZT  ,Lecteur);
        NetResource.lpRemoteName =StrPCopy(RemoteNameAZT ,Chemin);
        NetResource.lpProvider = NULL;
     
        // Connection
        Retour=WNetAddConnection2(&NetResource,StrPCopy(PassWordAZT,MotPasse),StrPCopy(LoginAZT,Login),CONNECT_UPDATE_PROFILE);
     
        // Test de la réponse
        AffErreurLecteur(Retour);
     
     
        return (Retour==NO_ERROR);
     
    }

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 9
    Dernier message: 27/05/2005, 19h22
  2. Déconnecter un lecteur reseau
    Par Raphs dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 28/01/2005, 15h39
  3. [MFC] Creer Lecteur reseau
    Par MadChris dans le forum MFC
    Réponses: 2
    Dernier message: 03/05/2004, 12h01
  4. [VB6] [Réseau] Monter un lecteur réseau
    Par vbcasimir dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 31/03/2003, 10h29
  5. Connecter un lecteur reseau
    Par manusweb dans le forum C++Builder
    Réponses: 4
    Dernier message: 03/09/2002, 12h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo