Home Page
Articoli
Tips & Tricks
News
Forum
Archivio Forum
Blogs
Sondaggi
Rss
Video
Utenti
Chi Siamo
Contattaci
Username:
Password:
Login
Registrati ora!
Recupera Password
Home Page
Stanze Forum
.NET Framework
File di rete bloccato. Da chi ?
mercoledì 17 maggio 2006 - 17.21
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
stefanoZaninelli
Profilo
| Newbie
3
messaggi | Data Invio:
mer 17 mag 2006 - 17:21
Qualcuno mi saprebbe dire se esiste una classe, un oggetto, delle API o altro che mi dia la possibilità di sapere il nome o i nomi degli utenti che bloccano un file di rete ?
Grazie
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
gio 18 mag 2006 - 10:52
>Qualcuno mi saprebbe dire se esiste una classe, un oggetto, delle
>API o altro che mi dia la possibilità di sapere il nome o i nomi
>degli utenti che bloccano un file di rete ?
Mai visto niente di simile.
La vedo come una cosa abbastanza improbabile anche perchè già è abbastanza raro che più utenti cerchino di accedere allo stesso file. Se succede evidentemente si è studiata una configurazione di rete errata e sono stati educati male gli utenti.
In ogni caso prova ad are un'occhiata a questo software, che segnala i processi che tengono i lock sui file ed eventualmente elimina con una forzatura il lock:
http://ccollomb.free.fr/unlocker/
ciao
David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
stefanoZaninelli
Profilo
| Newbie
3
messaggi | Data Invio:
gio 18 mag 2006 - 12:00
Il problema è che io devo aggiornare un eseguibile perchè ho fatto delle modifiche ad un programma e mi trovo il file bloccato perchè in uso dagli utenti e vorrei sapere quali sono senza dover aprire per forza la console "D:\WINDOWS\system32\fsmgmt.msc" la quale mi fornisce il dato, ma risulta un pò macchinosa da consultare. Quindi volevo fare un programmino mio più veloce e diretto sul file interessato.
Il codice c'è per forza perchè lo usa la console sopra citata.
Grazie comunque
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
gio 18 mag 2006 - 13:00
>Il problema è che io devo aggiornare un eseguibile perchè ho
>fatto delle modifiche ad un programma e mi trovo il file bloccato
>perchè in uso dagli utenti e vorrei sapere quali sono senza dover
>aprire per forza la console "D:\WINDOWS\system32\fsmgmt.msc"
>la quale mi fornisce il dato, ma risulta un pò macchinosa da
>consultare. Quindi volevo fare un programmino mio più veloce
>e diretto sul file interessato.
Hai ragione.
L'uso del comando NET FILE non ti va bene ?
Con questo comando puoi chiudere anche i file come faresti tramite console, solo che puoi farlo da command line con uno script.
Ciao
David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
stefanoZaninelli
Profilo
| Newbie
3
messaggi | Data Invio:
gio 18 mag 2006 - 13:22
Il comando NET FILE funziona solo se lanciato da server purtroppo.
Brainkiller
Profilo
| Guru
7.999
messaggi | Data Invio:
gio 18 mag 2006 - 14:57
>Il comando NET FILE funziona solo se lanciato da server purtroppo.
Ciao Stefano,
allora prova a guardarti questa API:
NetFileGetInfo
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/stgmgmt/fs/netfileenum.asp
che può ritornare una struttura di tipo FILE_INFO_3 che contiene i locks e quale utente ha aperto il file:
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/stgmgmt/fs/netfileenum.asp
Nella NetFileGetInfo è possibile specificare anche il Server su cui aprire il file.
ciao
David De Giacomi
Microsoft MVP
http://blogs.dotnethell.it/david/
Torna su
Stanze Forum
Elenco Threads
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?
Dopo esserti registrato potrai chiedere
aiuto sul nostro
Forum
oppure aiutare gli altri
Consulta le
Stanze
disponibili.
Registrati ora !