Il linea di massima, il metodo corretto (che funzionava anche in VB6, e che io ho sempre usato) è quello di utilizzare le cartelle definite 'speciali' ovvero le cartelle preposte da Microsoft e tra queste usare la cartella 'adatta', ma ho detto in linea di massima perchè NON sempre è così.Originariamente inviato da garzone
grazie gibra. Infatti ora funziona
cmq io voglio dimenticare il 6
quindi dimmi per favore se questo metodo è cmq sbagliato
Le trovi nella classe Environment
ovvero Environment.SpecialFolder.xxxxxxxxxx
dove xxxxxxxxxx è l'enumerazione che elenca tutte le cartelle speciali.
Ad esempio la cartella Documenti dell'utente corrente, in tutti i computer, non importa quale sia il nome dell'utente è:
Environment.SpecialFolder.MyDocuments
esempio:
Ovviamente, qualsiasi installer serio ti consentirà di fare la stessa cosa, ovvero determinare in quale cartella speciale deve essere installato un file, quindi è determinante dare l'indicazione corretta all'installer affinchè durante il setup copi i file nella stessa cartella in cui il programma si aspetta di trovarli.codice:Dim UserDocPath As String = Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments)
Quale sia la cartella 'adatta' dipende da molti fattori determinanti, tra cui bisogna tenere conto delle nuove policy sulla sicurezza implementate in Vista e Seven (croce e delizia dei programmatori che riempono i forum con i relativi problemi della serie: "Aiuto! In WindowsXP funzionava, in Seven non funziona più...").
Oltre a questi, vi sono altri fattori come:
1) dal come e dal chi deve essere utilizzato il programma.
Se è un programma di tipo Desktop (mono-utente), oppure un programma da condividere in una rete LAN (multi-utente).
2) cosa devi farne di un file.
Deve essere letto? Deve essere anche scritto?
Come vedi non esiste un metodo universale ma dipende da diversi fattori, quindi non esiste una risposta univoca, ma la sola risposta valida è: dipende.
Una cosa è certa: se si prevede che un file debba essere modificato non dovrà mai essere installato nella cartella <ProgramFiles>\TuaApplicazione perchè da Vista in avanti questa cartella (ed altre di sistema) non lo permettono più (come invece avveniva fino a WindowsXP) in quanto su tali cartelle si hanno solo permessi di lettura, ma non di scrittura.
Ehhhh..... Sembra facile.![]()
![]()