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

Réseau/Web Python Discussion :

Tester l'accès à un emplacement réseau [Python 3.X]


Sujet :

Réseau/Web Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2020
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2020
    Messages : 8
    Par défaut Tester l'accès à un emplacement réseau
    Bonjour,
    Je développe une interface pour connecter des lecteurs réseaux en python (avec netuse). Un bouton tkinter lance la commande de connexion, et un texte affiche l'état de la connexion.
    Cependant ce texte affiche "connecté" dès lors que le lecteur est présent dans l'explorateur windows, même si on ne peut pas y accéder. Il faut le déconnecter manuellement depuis l'explorateur pour avoir le statut "déconnecté" (il n'apparait plus dans la requête win32net.NetUseEnum).

    Comment puis-je faire pour tester la connexion du disque avant d'afficher son statut ?

    Raphael

    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
     
    import os
    import win32net
    (_drives, total, resume) = win32net.NetUseEnum (None, 0, 0)
    disques = []
    for drive in _drives:
        if drive['local']== "V:":
            disques.append("v")
        if drive['local']=="U:":
            disques.append("u")
     
    def monterU():
        if os.system(r"net use u: \\srsedc03\users") == 0:
            os.system(r"net use u: \\srsedc03\users")
            etatU.set("connecté")

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 752
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 752
    Par défaut
    Salut,

    Citation Envoyé par razorvla Voir le message
    Comment puis-je faire pour tester la connexion du disque avant d'afficher son statut ?
    Voilà typiquement le genre de question à poser dans un forum Windows.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Sous Windows, et dans la mesure ou les disques réseaux sont bien affectés à une lettre de drive (c'est mon cas avec un NAS), voilà ce que je pourrais essayer:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    import os
     
    for drive in "ABCDEFGHIJKLMNOPQRSTUVWXYZ":
        drive += ':'
     
        try:
            os.scandir(drive)
            ok = "accessible"
        except Exception:
            ok = "non accessible"
     
        print(drive, os.access(drive, os.R_OK), ok)
    Ce qui donne par exemple chez moi:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    A: False non accessible                <=== Lecteur de disquette sans disquette
    B: False non accessible                <=== Lecteur de disquette sans disquette
    C: True accessible
    D: True accessible                     <=== Recovery Image
    E: True accessible
    F: False non accessible                <=== Lecteur DVD sans DVD
    ...
    R: True accessible                     <=== disque RAM
    ...
    Z: True accessible                     <=== disque réseau local NAS
    Mais je n'ai pas chez moi de cas où une lettre de drive existerait, mais sans que son contenu soit accessible. A essayer!

  4. #4
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2020
    Messages
    8
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2020
    Messages : 8
    Par défaut Merci
    Bonjour,
    Merci beaucoup, cette commande semble fonctionner. A voir en l'intégrant dans mon code.
    J'ai bien les disques accessibles lorsque je suis connecté, et "non accessible" quand je me déconnecte, même s'ils sont encore visibles dans l'explorateur windows.
    Merci !

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

Discussions similaires

  1. tester l'accès à un chemin réseau
    Par BenoitL77 dans le forum Général VBA
    Réponses: 6
    Dernier message: 13/03/2020, 16h22
  2. problème d'accès au ressources réseau XP
    Par ouakammathieu dans le forum Administration
    Réponses: 4
    Dernier message: 19/06/2006, 13h21
  3. Tester l'accès a la base
    Par bouboussjunior dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 14/10/2005, 18h02
  4. Petit souci accès BD Firebird réseau
    Par lio33 dans le forum Connexion aux bases de données
    Réponses: 1
    Dernier message: 26/09/2005, 14h24
  5. Filtrage d'accès DHCP au réseau par adresse MAC
    Par kikica dans le forum Administration
    Réponses: 1
    Dernier message: 14/09/2005, 11h38

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