Visual Basic Simple
Informazioni aggiuntive sulla
Registrazione delle Estensioni in Windows
Sincronizza Indice
Sincronizza Indice
Scarica il progetto
Scarica il progetto
Scarica il testo dell'articolo
Testo dell'articolo
Stampa l'articolo
Stampa l'articolo

I sistemi Windows associano a ciascuna estensione registrata nel sistema uno o più programmi, assegnati ciascuno ad un determinato verbo. Tutte le registrazioni sono memorizzate nel registro di Windows alla chiave HKEY_CLASSES_ROOT (formata dall'insieme di altre due chiavi). Così ad esempio i files con estensione VBP solitamente contengono tre verbi:

  • Apri (open)
    Il verbo standard associato a quasi tutte le estensioni.
    Richiama: "C:\Programmi\.....\vb5.exe" "%1"

  • Esegui (Run Project)
    Apre ed esegue automaticamente il progetto selezionato.
    Richiama: "C:\Programmi\.....\vb5.exe" "%1" /run

  • Crea (Make)
    Apre, compila e chiude il progetto selezionato.
    Richiama: "C:\Programmi\.....\vb5.exe" "%1" /make

I verbi tra parentesi (open, Run Project e Make) sono quelli registrati nel sistema ma a ciascuno d'essi può essere associata una descrizione che apparirà nel menu popup. Tale descrizione è inserita nel valore predefinito della chiave del verbo. Il verbo open è sempre e comunque tradotto in Apri a livello di sistema, dipendentemente dalla lingua del sistema operativo. Altri verbi possono essere tradotti automaticamente.

Figura 1Riprendendo l'esempio dell'estensione .VBP è interessante notare come la maggior parte delle estensioni registrate presentino una sorta di deferring (reinvio) ad un'altra chiave, come mostrato nella figura a fianco. Nel nostro esempio la chiave .vbp presenta il valore VisualBasic.Project e pertanto tutte le definizioni saranno reinviate ad una chiave con questo nome.

Figura 2Questo sistema consente di associare più estensioni ad un'unica registrazione, facendo puntare ciascuna estensione alla registrazione reinviata.

La figura a fianco mostra la gerarchia completa dell'estensione .VBP la quale, come già detto, contiene un deferring alla chiave VisualBasic.Project che a sua volta conterrà le varie impostazioni ed i tre verbi registrati.

L'utilizzo del deferring non è obbligatorio: infatti tutte le sottochiavi della chiave VisualBasic.Project avrebbero potuto essere all'interno della chiave .vbp.

La sottochiave DefaultIcon consente di assegnare un'icona all'estensione specifica. Tale icona può essere sia un file di icona (.ico) sia un programma al cui interno sono contenute una o più icone. Tutti i programmi VB ad esempio solitamente contano almeno un'icona, quella mostrata nel menu di sistema del form.
Per assegnare un'icona all'estensione utilizzata basterà specificare il percorso completo dell'icona nel valore predefinito della chiave DefaultIcon.

Nel nostro esempio corrisponde a C:\Programmi\.....\vb5.exe,16 e ciò indica al sistema di utilizzare la diciassettesima icona (16 con base 0) del programma vb5.exe.

La sottochiave shell contiene i verbi che appariranno nel menu contestuale associato all'estensione. Al suo interno possono essere presenti più sottochiavi (open, Make, Run Project) e specificando il nome di un verbo nel valore predefinito della chiave shell si rende tale verbo come il predefinito. In caso contrario il verbo predefinito sarà open.

Ciascun verbo si compone di almeno due chiavi: la prima è il nome del verbo stesso e la seconda è command che conterrà il percorso dell'applicazione da richiamare alla scelta del verbo. A ciascun verbo può essere assegnata una descrizione migliore che verrà mostrato nel menu contestuale al posto del nome del verbo; questa descrizione sarà specificata nel valore predefinito della chiave del verbo. Il valore della chiave command conterrà invece il percorso completo dell'applicazione da richiamare.

Nel nostro esempio il comando per il verbo open è "C:\Programmi\.....\vb5.exe" "%1". Al posto del %1 sarà fornito il nome DOS del file richiamato e sarà passato come riga di comando al programma specificato. Se il programma è in grado di maneggiare nomi di file lunghi al posto del %1 potremo utilizzare %L. Naturalmente il programma utilizzato dovrà essere in grado di leggere la riga di comando ed operare in funzione d'essa.

Alcuni programmi appoggiano alla chiave command altre chiavi per stabilre comunicazioni DDE.

Fibia FBI
22 Dicembre 2002

Scarica il progetto
Scarica il progetto
Scarica il testo dell'articolo
Scarica il testo dell'articolo
Stampa l'articolo
Stampa l'articolo