Page 1 of 2 12 LastLast
Results 1 to 15 of 18

Thread: Desktop.ini non funziona

  1. #1
    Software Zone Maniac
    Join Date
    %511 %2003
    Location
    Verona
    Posts
    1,512

    Desktop.ini non funziona

    Salve a tutti.
    Windows XP SP3.
    Ultimamente sto imparando ad utilizzare il file Desktop.ini per settare alcune caratteristiche di visualizzazione delle cartelle; in particolare desidero cambiare la visualizzazione delle icone delle cartelle.
    Se vado su ogni Cartella e faccio click destro -> personalizza ho la possibilità di cambiare l'icona; quando faccio questo viene costruito automaticamente un file .ini all'interno della directory.
    La cosa alquanto strana è questa: se io copio il file .ini in un'altra cartella, oppure se lo costruisco con precisione e perfettamente in un'altra cartella, questo non funziona; solo dopo avere effettuato la procedura suddetta (click destro -> personalizza) il file .ini funziona e se lo modifico anche le modifiche funzionano.
    Se il file desktop.ini che viene costruito automaticamente è IDENTICO a quello che ho costruito io in precedenza, quello che ho costruito io non funziona mentre quello costruito automaticamente funziona.
    Ho controllato gli attributi del File e della Directory, ma non sembra che abbiano nessun significato; comunque anche assegnando manualmente gli attributi giusti non funziona.
    Ho controllato nel registro ma non sembra ci siano voci che memorizzano il file Desktop.ini che si trova all'interno della cartella.
    Ho controllato nella cartella e l'unico file che viene costruito automaticamente è proprio Desktop.ini.
    Il file generato automaticamente sembra essere in formato ANSI e non UNICODE, ma in ogni caso se lo genero manualmente non funziona.
    La cosa sembra alquanto misteriosa, nessuno ne sa qualcosa?
    Grazie in ogni caso

  2. #2
    Software Zone Fanatic
    Join Date
    %053 %2004
    Posts
    27,613
    Penso che desktop.ini, essendo un file legato ad ogni singola cartella, non sia il file che permetta di fatto la personalizzazione della cartella, ma quello che contiene semplicemente i dati ;

    se poi quei dati vogliamo APPLICARLI, cioè vogliamo confermare quel tipo di caratteristiche, allora passiamo i dati al registro col tasto appunto di conferma della personalizzazione.

    In caso contrario, o se tu esporti pari pari un file desktop.ini identico da una cartella ad un'altra, non otterrai alcuna modifica, perchè è solo un file di lettura.

    Questo spiegherebbe il perchè, una volta modificato e confermato l'aspetto di una cartella, e quindi operate le scritture sul desktop.ini, il SO ti chieda se vuoi estendere quelle caratteristiche a TUTTE le cartelle, nel qual caso tutte le configurazioni di registro di tutte le cartelle LEGGONO semplicemente i dati di quel desktop.ini e le scrivono di fatto nell'istruzione di configurazione di TUTTE le cartelle, utilizzando le chiavi di registro del tipo :

    chiaveHkey_Current_UserControl PanelDesktopWindowMetrics ... e simili.

    Insomma, per dirla in termini di programmazione, dovrebbe essere una semplice tabella di variabili private che, per essere efficaci, devono essere prima lette ed acquisite dal programma e poi vengono eseguite.

  3. #3
    Software Zone Maniac
    Join Date
    %511 %2003
    Location
    Verona
    Posts
    1,512
    Si questo lo penso anche io ma da quello che avevo capito, siccome è un file riconosciuto dal sistema, pensavo venisse riconosciuto automaticamente e letto automaticamente seza doverlo associare esplicitamente al programma che lo deve leggere...
    Altrimenti quale è il programma che lo deve leggere e come si effettua la chiamata?

  4. #4
    Software Zone Maniac
    Join Date
    %511 %2003
    Location
    Verona
    Posts
    1,512
    Dalle prove effettuate sembra che abbia ragione tu e che comunque i dati non vengano scritti nel registro ma vengano passati ad un programma che da quel momento in poi li monitorizza; questo è sostenibile dal fatto che da quel momento la directory non è più cancellabile perché utilizzata da un altro processo... quale poi non si sa...
    Fatto sta che la Microsoft e tutti gli altri non fanno nessun accenno ad un particolare programma che deve leggere i dati ma tutti dicono che basta costruire il file Desktop.ini...

  5. #5
    Software Zone Fanatic
    Join Date
    %053 %2004
    Posts
    27,613
    Esatto, ma il programma che dici tu, cioè che esegue i dati del desktop.ini è una delle decine di routine di runtime che usa il registro, tipo appunto quelle richiamate da Explorer.

  6. #6
    Software Zone Maniac
    Join Date
    %511 %2003
    Location
    Verona
    Posts
    1,512
    scusa ma perché allora tutti dicono che basta scrivere un file Desktop.ini e metterlo nella directory?

  7. #7
    Software Zone Fanatic
    Join Date
    %053 %2004
    Posts
    27,613
    Perchè è cosi' ; solo che pero', una volta messo, devi dire a Windows che è quello che vuoi venga letto. Non è che lo metti e basta. E' come inserire una password in un sccount : tu la scrivi, e va bene, ma se non dai l'enter non la elabora.

    Trattandosi di un file di definizione, te l'immagini che cosa potrebbe succedere se soltanto tu spostassi un file in una cartella e il SO leggesse subito i dati ?......

    Sarebbe una catastrofe, perchè non farebbe manco il controllo di congruità dei dati stessi.

    Viceversa, se fai un file a manina del cavolo, con errori logici voluti apposta da te, vedrai che appena lo metti nella cartella non succede niente, ma appena gli confermi che vuoi che venga letto...... ti spara una ricca schermata di errore, con parolacce in background....

  8. #8
    Software Zone Maniac
    Join Date
    %511 %2003
    Location
    Verona
    Posts
    1,512
    e come faccio a dire a Windows che voglio ke lo legga???
    Poi... una cosa che non capisco... ho fatto un esperimento: ho costruito due directories; in una ho effettuato la modifica dell'icona utilizzando le proprietà e ha normalmente generato il file desktop.ini; ho copiato tale file nell'altra directory e ho riavviato il sistema... la prima directory ha funzionato e la seconda no... ho fatto una ricerca nel registro per vedere se esisteva da qualche parte almeno il nome della directory che funziona... ma non ho trovato nulla... ma allora l'informazione su quale directory deve leggere il file desktop.ini dove cavolo viene messa???
    Comunque la domanda più importante rimane la prima: come faccio a dire a Windows che da un momento in poi quella specifica directory deve essere controllata tramite il file Desktop.ini?

  9. #9
    Software Zone Fanatic
    Join Date
    %053 %2004
    Posts
    27,613
    Quote Originally Posted by archimede View Post
    e come faccio a dire a Windows che voglio ke lo legga???
    .....
    Comunque la domanda più importante rimane la prima: come faccio a dire a Windows che da un momento in poi quella specifica directory deve essere controllata tramite il file Desktop.ini?
    Forse intendi in un programma tipo Visual C o simili ?.... perchè non ho capito la domanda.

    Dall'inizio della discussione la domanda era diversa, e cioè perche' il file desktop.ini modifica i dati solo quando gli dai conferma. Non mi pare di aver letto altro relativo a programmazione del file di definizione.

  10. #10
    Software Zone Maniac
    Join Date
    %511 %2003
    Location
    Verona
    Posts
    1,512
    Il senso della domanda è:
    poiché desktop.ini è un file di dati, che deve essere letto da un programma per potere funzionare e fare il suo dovere, quale è il programma che lo legge e agisce in base ai dati contenuti? come si effettua la chiamata a tale programma?
    E poi, per curiosità: evidentemente le informazioni su quali e quanti files Desktop.ini devono funzionare devono essere messe da qualche parte, se poi si desidera che tutto funzioni allo stesso modo quando il computer viene riavviato; poiché da una mia ricerca nel registro queste informazioni non le ho trovate, dove cavolo vengono messe?

  11. #11
    Software Zone Maniac
    Join Date
    %511 %2003
    Location
    Verona
    Posts
    1,512
    :-)
    Ho trovato la soluzione... ma che pacco!
    La comunico qui per l'utilità di tutti.
    Oltre a costruire il File Desktop.ini (e già questo è difficile perché ci sono pochissime informazioni o manuali in giro), è necessario assegnare gli attributi Hidden e System: per fare ciò è necessario usare il prompt dei comandi, utilizzare il comando Attrib Desktop.ini per vedere quali sono gli attributi che ha il file; se il file ha attributo A utilizzare Attrib Desktop.ini -a +h +s
    se invece non ha attributo A utilizzare Attrib Desktop.ini +h +s
    andare nella cartella sottostante utilizzando cd ..
    oppure in altro modo come si preferisce
    utilizzare di nuovo il comando Attrib NomeCartella +s
    Se il nome cartella contiene spazi è necessario utilizzare i doppi apici "Nome Cartella"
    Il gioco è fatto.
    Ma queste informazioni le ho dovute prendere dal manuale del Registro...
    Last edited by archimede; %23-%02-%10 at %22:%Feb. Reason: correzione ortografica

  12. #12
    Rōnin Member
    浪人
    dubo's Avatar
    Join Date
    %456 %2008
    Location
    Milano
    Posts
    10,863
    bravo Archimede hai trovato la soluzione e grazie per averla resa nota.
    come da S W Z O N E F O R U M - Regole del forum punto 9 ti chiedo di non utilizzare in alcuna maniera linguaggio abbreviato sms (Ex. : k in luogo di ch (perké) - nn in luogo di non - 6 in luogo di sei - x in luogo di per .... ecc.)
    Grazie per l'eventuale collaborazione.

  13. #13
    Software Zone Maniac
    Join Date
    %511 %2003
    Location
    Verona
    Posts
    1,512

    Conosco il regolamento... lo so che hai ragione infatti non lo faccio mai...
    Ero talmente stufo e avevo voglia di essere ripreso che l'ho fatto apposta...

  14. #14
    Rōnin Member
    浪人
    dubo's Avatar
    Join Date
    %456 %2008
    Location
    Milano
    Posts
    10,863
    .....allora cosa facciamo ti do il primo warning cosi per un po' non avrai voglia di essere ripreso?

  15. #15
    Software Zone Maniac
    Join Date
    %511 %2003
    Location
    Verona
    Posts
    1,512
    ma dai te la prendi per così poco? era solo uno scherzo, non una dichiarazione di anarchia...
    :-)
    Non è che io intenda continuare era solo uno scherzo... spero non ve la prendiate per così poco...

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •