Connecter un lecteur réseau [Résolu]

Vous débutez et vous avez besoin d'aide ? N'hésitez pas à poser vos questions
brossden
Messages : 833
Inscription : lun. 26/janv./2004 14:37

Connecter un lecteur réseau [Résolu]

Message par brossden »

Bonjour à tous

Ma question :

Comment Connecter un lecteur réseau sous PureBasic

Merci d'avance
Dernière modification par brossden le jeu. 03/mai/2007 9:02, modifié 1 fois.
Denis

Bonne Jounée à tous
Avatar de l’utilisateur
Kwai chang caine
Messages : 6989
Inscription : sam. 23/sept./2006 18:32
Localisation : Isere

Message par Kwai chang caine »

Bonjour mon bon BrossDen

Je suis content de pouvoir à mon tour te donner un petit coup de main.
J'ai un code un peu long, mais qui marche, de RINGS qui peux peut etre t'aider:

Code : Tout sélectionner

; www.purearea.net (Thanks to Rings!)
; Author: Rings
; Date: 24. September 2002

;Connect/Disconnect shared networkdirectory as mapped drives
;PureBasic-Port 2002  by Siegfried Rings (CodeGuru)

#NO_ERROR = 0
#CONNECT_UPDATE_PROFILE = $1
; The following includes all the constants defined for NETRESOURCE,
; not just the ones used in this example\
#RESOURCETYPE_DISK = $1
#RESOURCETYPE_PRINT = $2
#RESOURCETYPE_ANY = $0
#RESOURCE_CONNECTED = $1
#RESOURCE_REMBERED = $3
#RESOURCE_GLOBALNET = $2
#RESOURCEDISPLAYTYPE_DOMAIN = $1
#RESOURCEDISPLAYTYPE_GENERIC = $0
#RESOURCEDISPLAYTYPE_SERVER = $2
#RESOURCEDISPLAYTYPE_SHARE = $3
#RESOURCEUSAGE_CONNECTABLE = $1
#RESOURCEUSAGE_CONTAINER = $2
; Error Constants:
#ERROR_ACCESS_DENIED = 5
#ERROR_ALREADY_ASSIGNED = 85
#ERROR_BAD_DEV_TYPE = 66
#ERROR_BAD_DEVICE = 1200
#ERROR_BAD_NET_NAME = 67
#ERROR_BAD_PROFILE = 1206
#ERROR_BAD_PROVIDER = 1204
#ERROR_BUSY = 170
#ERROR_CANCELLED = 1223
#ERROR_CANNOT_OPEN_PROFILE = 1205
#ERROR_DEVICE_ALREADY_REMBERED = 1202
#ERROR_EXTENDED_ERROR = 1208
#ERROR_INVALID_PASSWORD = 86
#ERROR_NO_NET_OR_BAD_PATH = 1203

Procedure ConnectDrive(Drive.s, Resource.s)
  NetR.NETRESOURCE
  ErrInfo.l
  MyPass.s
  MyUser.s
  NetR\dwScope = #RESOURCE_GLOBALNET
  NetR\dwType = #RESOURCETYPE_DISK
  NetR\dwDisplayType = #RESOURCEDISPLAYTYPE_SHARE
  NetR\dwUsage = #RESOURCEUSAGE_CONNECTABLE
  NetR\lpLocalName =@Drive.s; If undefined, Connect with no device
  NetR\lpRemoteName =@Resource.s; Your valid share
  
  ;NetR.lpComment = "Optional Comment"
  ;NetR.lpProvider =    ; Leave this undefined
  ; If the UserName and Password arguments are NULL, the user context
  ; for the process provides the default user name.
  ErrInfo = WNetAddConnection2_(NetR, MyPass, MyUser, #CONNECT_UPDATE_PROFILE)
  If ErrInfo = #NO_ERROR
    MessageRequester("Net Connection Successful!",   "Share Connected",0)
  Else
    MessageRequester("ERROR: " +Str( ErrInfo ), " - Net Connection Failed!" +"Share not Connected",0)
  EndIf
EndProcedure

Procedure DisconnectDrive(Drive.s)
  ErrInfo.l
  strLocalName.s
  strLocalName.s = Drive.s
  ErrInfo = WNetCancelConnection2_(strLocalName, #CONNECT_UPDATE_PROFILE, #False)
  If ErrInfo = #NO_ERROR
    MessageRequester ("Net Disconnection Successful!",   "Share Disconnected",0)
  Else
    MessageRequester( "ERROR: " +Str( ErrInfo )," - Net Disconnection Failed!"+"Share not Disconnected",0)
  EndIf
EndProcedure

ConnectDrive("X:","\\Chemin")
DisConnectDrive("X:")
Encore merci pour ton aide de l'autre jour. :wink:
brossden
Messages : 833
Inscription : lun. 26/janv./2004 14:37

Message par brossden »

Bonjour Kwai truc machin .... :wink:

J'ai trouvé plus simple ce qui ne m'empêche pas de te remercier !!

Dans la droopy lib :

Code : Tout sélectionner

WNetAddConnection("\\MonRéseau\MaDirectory","Mot de passe","R:")
Denis

Bonne Jounée à tous
Répondre