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 testo condiviso
lunedì 23 marzo 2009 - 13.21
Elenco Threads
Stanze Forum
Aggiungi ai Preferiti
Cerca nel forum
mikkosoft
Profilo
| Newbie
34
messaggi | Data Invio:
lun 23 mar 2009 - 13:21
Ho un'applicazione che mi crea un file di testo. Io devo accedere a questo file, ma non so quando è "pronto".
Non è sufficiente che il file esista (io.file.exists), perchè se ci sta scrivendo dentro, il file esiste ma non è accessibile.
Qualcuno ha qualche idea?
Anonimo
Profilo
| Senior Member
392
messaggi | Data Invio:
lun 23 mar 2009 - 13:55
Come spesso accade utilizzi un record in un database dove indichi per il file in questione quando la risorsa è rilasciata. Se mi vengono altri comandi ti scrivo, ma in linea generale si crea una tabella nel db o in un file così composta:
RISORSA STATO
--------------------------------------------------
C:\fileAperto.txt 0/1
Se lo stato per la risorsa è a 0 ci stai ancora lavorando, a 1 è libero.
ovvimente quando scrivi sul file ti devi preoccupare in apertura di impostare lo stato a 0 e in chiusura a 1, e cosa ancora più importante dopo aver cambiato lo stato del file chiudere lo stream.
mikkosoft
Profilo
| Newbie
34
messaggi | Data Invio:
lun 23 mar 2009 - 14:22
Il problema è che non sono io a scrivere il file, ma un'applicazione esterna.
Io ho bisogno di sapere quando l'applicazione esterna (sulla quale non posso in nessun modo interagire) ha ultimato di scrivere il file.
Comunque grazie.
Altre idee?
Anonimo
Profilo
| Senior Member
392
messaggi | Data Invio:
lun 23 mar 2009 - 16:46
Beh puoi usare l'API di windows per sapere se un processo è chiuso, ma devi sapere a priori qual'è il nome dell'applicazione che mette mano al file e se questa termina dopo aver modificato il file.
mikkosoft
Profilo
| Newbie
34
messaggi | Data Invio:
lun 23 mar 2009 - 16:50
L'applicazione è un agente in background che scarica un file da un misuratore fiscale.
Non so se è fattibile con le API, sapresti indicarmi dove documentarmi?
Grazie
Anonimo
Profilo
| Senior Member
392
messaggi | Data Invio:
lun 23 mar 2009 - 17:04
Puoi vederti la documentazione delle seguenti API che possono tornarti utili:
OpenProcess, WaitForSingleObject e CloseHandle
poi guardati il metodo run della classe e dell'interfaccia IWshShell_Class
Jeremy
Profilo
| Guru
1.527
messaggi | Data Invio:
lun 23 mar 2009 - 22:15
Ciao Mirko.
Potresti semplicemente tentare l'accesso al file e,qualora fosse *impegnato* da un'altro processo, gestire l'eccezione in un blocco Try...Catch....EndTry.
Facci sapere...
Ciao
mikkosoft
Profilo
| Newbie
34
messaggi | Data Invio:
mar 24 mar 2009 - 16:20
Infatti è quello che avevo pensato, speravo però che ci fosse qualcosa di più elegante.
Vi tengo aggiornati!
Grazie
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 !