Bonjour,

J'ai développé un script pour copier un fichier présent sur un serveur en local.
Le voici :
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
'CREATION DES OBJETS
Set object_exec_cmd = CreateObject("WScript.Shell")
Set objet_connect_lecteur = CreateObject("WScript.Network")
Set objet_copie = CreateObject("Scripting.FileSystemObject")


'CONNEXION DU LECTEUR RESEAU
Function Connexion()
	
	Dim computername
	
'Récupération du nom de l'ordinateur
'	computername = InputBox("Veuillez taper le nom de votre ordinateur svp (exemple FREL21524) :","Nom de votre ordinateur","")
'ligne_cmd_deco = "net use /delete N:"
'Call object_exec_cmd.Run (ligne_cmd_deco)
'Connexion du lecteur réseau
	ligne_cmd_connexion = "net use N: \\frer0645\out"
	Call object_exec_cmd.Run (ligne_cmd_connexion)
	
End function


'VERIFICATION LECTEUR RESEAU CONNECTE AVANT COPIE
function Verif()
	
	Connexion()
	
	do while objet_copie.DriveExists("N:") = false
	loop
	
end function



Function Copie_fichier()
	Dim oFolder
	Dim objFolderItem
	Dim objPath
	
	Option_noFolderButton = &H200
	
	Verif()
	
'BOX SELECTION
	Set objDialog=CreateObject("SAFRCFileDlg.FileOpen")
	ObjDialog.OpenFileOpenDlg
	
'Récupération du chemin du fichier à copier
	fichier_copie=objDialog.FileName
	
	
'BOX DESTINATION
	Set oShell = CreateObject("Shell.Application") 
	Set oFolder = oShell.BrowseForFolder(0, "Selectionner le répertoire de destination",Option_noFolderButton,"")
	
'Récupération du chemin du répertoire de destination
	If (not oFolder is nothing) then
		Set objFolderItem = oFolder.Self
		rep_dest = objFolderItem.Path
	End if
	
'Copie du fichier du serveur vers le répertoire en local
	objet_copie.CopyFile fichier_copie,rep_dest,True
	
	MsgBox "Le fichier est copié."
	
'	Set oFolder = nothing
'Set oShell = nothing
'Set objDialog=Nothing                                    
	
End function

'PROCEDURE PRINCIPALE	
Sub DownloadFile()
	Copie_fichier()
End Sub
Pour situer le contexte, j'ai crée un objet bouton avec le logiciel QLIKVIEW et attribué cette macro à ce bouton. Ensuite, l'utilisateur clique sur le bouton, voit la première fenêtre de choix de fichier puis choisit ensuite le dossier de destination en local.
Mon problème intervient à ce moment la. Alors que le fichier se copie très bien si je choisis le disque C:\ ou D:\ qui possèdent exactement les mêmes groupes de droits et options cochées dans l'onglet Sécurité, lorsque je crée un dossier n'importe où en lui allouant les mêmes groupes de droits et options, la copie échoue Il en ai de même si je crée un dossier qui est sous-dossier de D:\ par exemple et qui hérite des droits de D:\

Je ne comprends pas pourquoi la copie plante. Je ne suis pas très calé en "droits" Windows et j'aimerai bien comprendre pourquoi en allouant les même droits que sur les disques, le dossier ne convient pas. Il doit y avoir une manip que je ne fais pas ...

Merci d'avance.
Johan