Ouvrir un repertoire reseau protege par mot de passe [Résolu]

Messages postés
2
Date d'inscription
lundi 1 juillet 2002
Statut
Membre
Dernière intervention
20 mars 2006
- - Dernière réponse : Tuning Max
Messages postés
316
Date d'inscription
mercredi 15 juin 2005
Statut
Membre
Dernière intervention
31 août 2006
- 20 mars 2006 à 13:57
Bonjour tout le monde,

J'ai automatise la recuperation de fichiers dans un repertoire reseau.

Le probleme, c'est qu'a la premiere execution, je dois d'abord ouvrir ce repertoire via l'explorateur pour lui passer mon mot de passe.

Y a t il un moyen de lui passer le mot de passe directement dans du code ?

Merci,
naka
Afficher la suite 

5 réponses

Meilleure réponse
Messages postés
316
Date d'inscription
mercredi 15 juin 2005
Statut
Membre
Dernière intervention
31 août 2006
1
3
Merci
Si j'ai bien compris, tu commence par coller le code cidessous dans dans un module

Declare Function WNetAddConnection2 Lib "mpr.dll" Alias "WNetAddConnection2A" (lpNetResource As NETRESOURCE, ByVal lpPassword As String, ByVal lpUserName As String, ByVal dwFlags As Long) As Long
Declare Function WNetCancelConnection2 Lib "mpr.dll" Alias "WNetCancelConnection2A" (ByVal lpName As String, ByVal dwFlags As Long, ByVal fForce As Long) As Long


Type NETRESOURCE
dwScope As Long
dwType As Long
dwDisplayType As Long
dwUsage As Long
lpLocalName As String
lpRemoteName As String
lpComment As String
lpProvider As String
End Type


Const RESOURCETYPE_DISK = &H1
Const RESOURCE_PUBLICNET = &H2


Const CONNECT_REMEMBER_NONE = 0
Const CONNECT_UPDATE_PROFILE = &H1
Const RESOURCEDISPLAYTYPE_GENERIC = &H0
Const RESOURCEUSAGE_CONNECTABLE = &H1


Function Net_Connect(strLocalDrive, strRemotePath, strUserName, strPassword) As Long
Dim NetR As NETRESOURCE
NetR.dwScope = RESOURCE_PUBLICNET
NetR.dwType = RESOURCETYPE_DISK
NetR.dwDisplayType = RESOURCEDISPLAYTYPE_GENERIC
NetR.dwUsage = RESOURCEUSAGE_CONNECTABLE
NetR.lpLocalName = strLocalDrive
NetR.lpRemoteName = strRemotePath
NetR.lpComment = ""
Net_Connect = WNetAddConnection2(NetR, strPassword, strUserName, CONNECT_REMEMBER_NONE)
End Function
*********************************************************************
Function Net_Disconnect(strLocalDrive As String, dwRememberFlag As Long, bForced As Boolean) As Long
Net_Disconnect = WNetCancelConnection2(strLocalDrive, dwRememberFlag, bForced)
End Function

Voila ensuite pour la connexion proprement dite :
' Etablissement de la connection au lecteur réseau de la machine linux par exemple
result = Net_Connect("Z:", "[file://linux028/Monrep \\linux028\Monrep]", "UserName", "Password")

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 205 internautes nous ont dit merci ce mois-ci

Messages postés
316
Date d'inscription
mercredi 15 juin 2005
Statut
Membre
Dernière intervention
31 août 2006
1
3
Merci
Pour la deconnexion

result = Net_Disconnect("Z:", , True)

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 205 internautes nous ont dit merci ce mois-ci

Messages postés
316
Date d'inscription
mercredi 15 juin 2005
Statut
Membre
Dernière intervention
31 août 2006
1
3
Merci
et comme ça il fait tout tout seul comme un grand

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 205 internautes nous ont dit merci ce mois-ci

Messages postés
2
Date d'inscription
lundi 1 juillet 2002
Statut
Membre
Dernière intervention
20 mars 2006
0
Merci
Merci Max !!!


C'est exactement ce que je cherchais. Ca fonctionne tres bien maintenant :


- ma macro va recuperer les fichiers sur le server


- les copies en local


- fais les maj sur le reseau et ferme la connexion reseau au repertoire....


Je viens de lui ajouter une fonction ontime et maintenant, ma macro fait tout ca, tous les jours, sans que j'ai quoi que ce soit a faire ...
J'adore mon job !!

nakano
Messages postés
316
Date d'inscription
mercredi 15 juin 2005
Statut
Membre
Dernière intervention
31 août 2006
1
0
Merci
De rien ce fut un plaisir