Qui utilise le fichier sur le réseau

Le
ttcpp
Bonjour,

J'ai ecrit une macro qui copie des fichiers d'un répertoire vers un autre.
Etant donné que dans le répertoire de destination les fichiers exitent déjà
(en fait c'est faire pour une mise à jour sur le réseau), je teste si les
fichiers des destinations sont ouverts ou non. J'ai une focntion qui me le
permet. Par j'ai juste un problème : c'est de savoir quel est le nom de
l'utilisateur du fichier X qui est ouvert.
J'ai donc voulu utiliser UserStatuts pour récupérer le nom mais cela ne
fonction pas bien, car je récupere soit rien soit mon nom.

Merci pour votre aide.
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
michdenis
Le #17673011
Un ti fichier exemple écrit en chinois...

http://cjoint.com/?kCtDertRUP

jamais eu l'occasion de tester si tu peux obtenir ce que tu veux !!!



"ttcpp"
Bonjour,

J'ai ecrit une macro qui copie des fichiers d'un répertoire vers un autre.
Etant donné que dans le répertoire de destination les fichiers exitent déjà
(en fait c'est faire pour une mise à jour sur le réseau), je teste si les
fichiers des destinations sont ouverts ou non. J'ai une focntion qui me le
permet. Par j'ai juste un problème : c'est de savoir quel est le nom de
l'utilisateur du fichier X qui est ouvert.
J'ai donc voulu utiliser UserStatuts pour récupérer le nom mais cela ne
fonction pas bien, car je récupere soit rien soit mon nom.

Merci pour votre aide.
Michel Pierron
Le #17674581
Bonsoir ttcp;
Tu peux essayer ceci, mais tu dois avoir les droits administrateur pour lire
la liste des fichiers ouverts sur le serveur.

Dim fso As Object, Resource As Object
Dim What$, Result$
On Error Resume Next
What = InputBox("Enter any part of Filename", "Case Insensitive")
If What = "" Then Exit Sub
Set fso = GetObject("WinNT://Nom du domaine/Nom du serveur/LanmanServer")
' Enumerate resources
If (IsEmpty(fso) = False) Then
For Each Resource In fso.resources
If (Not Resource.user = "") And (Not Right(Resource.user, 1) = "$") Then
If InStr(1, Resource.Path, What, 1) Then
If Len(Result) Then Result = Result & vbLf & vbLf
Result = Result & "User" & vbTab & Resource.user & vbLf
Result = Result & "Path" & vbTab & Resource.Path
End If
End If
Next
End If
Set fso = Nothing
MsgBox Result, 64

MP


"ttcpp" news:
Bonjour,

J'ai ecrit une macro qui copie des fichiers d'un répertoire vers un autre.
Etant donné que dans le répertoire de destination les fichiers exitent
déjà
(en fait c'est faire pour une mise à jour sur le réseau), je teste si les
fichiers des destinations sont ouverts ou non. J'ai une focntion qui me le
permet. Par j'ai juste un problème : c'est de savoir quel est le nom de
l'utilisateur du fichier X qui est ouvert.
J'ai donc voulu utiliser UserStatuts pour récupérer le nom mais cela ne
fonction pas bien, car je récupere soit rien soit mon nom.

Merci pour votre aide.



Publicité
Poster une réponse
Anonyme