Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Qui utilise le fichier sur le réseau

2 réponses
Avatar
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.

2 réponses

Avatar
michdenis
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" a écrit dans le message de 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.
Avatar
Michel Pierron
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" a écrit dans le message de
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.