Tutte le informazioni sull'associazione delle estensioni di file sono memorizzate nel registro. E se fai un po 'di navigazione, non è tremendamente difficile capire come funzionano le cose. Per le associazioni a livello di macchina, tutto accade nella radice di HKEY_CLASSES_ROOT . La modifica manuale di questa roba ti dà il massimo potere sulle tue estensioni di file (anche se noiose). Basta creare un backup nel caso in cui si rovinino le cose e si desideri ripristinare.
Ogni associazione di file ha una sottochiave chiamata .xyz dove xyz è l'estensione del tuo file. Il valore (Predefinito) per quella chiave è impostato su una stringa arbitraria. La maggior parte delle applicazioni che registrano estensioni di file lo impostano su qualcosa di leggibile dall'uomo. Ad esempio, .pdf sul mio sistema è impostato su FoxitReader.Document . Ci sono molti altri valori in questa chiave, ma nulla è obbligatorio tranne il valore (Predefinito).
Indipendentemente dal valore impostato su (Predefinito), ci sarà una sottochiave corrispondente con lo stesso nome anche nella radice di HKEY_CLASSES_ROOT. Il valore (predefinito) di questa chiave è essenzialmente il "nome descrittivo" del tipo di file. Questa chiave può anche avere molte sottochiavi, ma le uniche a cui siamo interessati sono DefaultIcon e Shell .
DefaultIcon come probabilmente hai indovinato controlla l'icona per quel tipo di file. Il valore (predefinito) per questa chiave deve essere impostato sul percorso del file icona. O se l'icona si trova in un file .exe, impostarlo sul percorso di .exe e includere una virgola e l'indice dell'icona alla fine del percorso. Ad esempio, FoxitReader.Document DefaultIcon è impostato su
C:\PROGRA~1\FOXITS~1\FOXITR~1\FOXITR~1.EXE,1
Shell è dove hai impostato tutte le "azioni" per questo tipo di file. Per ogni azione che si desidera definire, creare una sottochiave denominata come si desidera denominare l'azione. La maggior parte dei tipi ha almeno un'azione chiamata open . All'interno della sottochiave di questa nuova azione, crea una sottochiave chiamata Command . Il valore (predefinito) di questa chiave di comando è fondamentalmente la riga di comando che viene eseguita quando si fa clic / esegui questa azione. Ad esempio, il comando open su FoxitReader.Document è
"C:\PROGRA~1\FOXITS~1\FOXITR~1\FOXITR~1.EXE" "%1"
L' argomento "% 1" viene impostato sul percorso del file da cui è stata eseguita l'azione.
Se hai definito solo un'azione per un determinato tipo di file, credo che sarà l'azione predefinita che verrà eseguita se si fa doppio clic sul file. Se ci sono più azioni possibili, è possibile impostare quale sarà l'impostazione predefinita modificando il valore (Predefinito) della chiave Shell . Basta impostarlo sul nome dell'azione che si desidera impostare come predefinita.
Detto questo, non è molto efficiente fare tutto da zero. Probabilmente è più facile utilizzare gli strumenti integrati per ottenere la maggior parte del percorso lì e quindi modificare manualmente le cose che gli strumenti non ti consentono di fare. Dovrei anche menzionare che tutte queste informazioni sono basate su XP, ma sono quasi certo che nessuna di queste sia cambiata per Vista o Win7.