Comment lire un fichier sur un réseau en cours d'utilisation / verrouillé par un autre processus en c #?
-
01-07-2019 - |
Question
Existe-t-il un moyen de lire un fichier verrouillé sur un réseau étant donné que vous êtes l'administrateur de la machine sur la machine distante? Je n'ai pas été en mesure de lire le fichier verrouillé localement, et essayer sur le réseau ajoute une couche de difficulté supplémentaire.
La solution
En fonction du type de verrou (lecture seule ou exclusive), il devrait être possible de copier le fichier d’abord, puis vous pouvez utiliser la copie non verrouillée.
Vous devriez pouvoir le faire dans un fil d’arrière-plan. Si vous aimez vraiment les threads, demandez à l'observateur de fichiers de démarrer le processus de lecture une fois la copie terminée (même si cela risque d'être excessif)
Autres conseils
Il n’ya aucun problème pour LIRE le fichier localement ou à distance s’il n’est pas verrouillé EXCLUSIVEMENT ou en LECTURE / ÉCRITURE. Si le fichier est verrouillé, vos droits administratifs ne vous aideront pas (même si vous êtes DIEU :-). Si le fichier n'est pas verrouillé avant de le lire (vous pouvez le vérifier en l'ouvrant avec un bloc-notes), vous pouvez le lire localement et à distance (cela n'a pas d'importance, sauf si votre partage réseau impose des restrictions supplémentaires).