banner graphic
Riferimenti

Definizione di file di informazioni per l'installazione (inf)

Un file inf di base contiene le sezioni elencate di seguito. ╚ possibile che i file inf pi∙ complessi abbiano delle sezioni aggiuntive. I nomi di sezione in grassetto corrispondono alle parole chiave riservate. I nomi di sezione in corsivo corrispondono a nomi arbitrari creati dall'autore del file inf.

[Version] Informazioni di base sulla versione per la convalida del file inf
[DefaultInstall] Sezione di installazione eseguita in base all'impostazione predefinita. Contiene dei puntatori ad altre sezioni che specificano i file da copiare ed eliminare, gli aggiornamenti del registro di configurazione , gli aggiornamenti del file ini e cos∞ via.
[AltrasezioneInstall] Utilizza lo stesso formato della sezione [DefaultInstall], ma deve essere richiamata esplicitamente. Utile per definire la modalitα di disinstallazione di un componente.
[DestinationDirs] Specifica il percorso sul disco rigido in cui verranno copiati, eliminati o rinominati i file di una sezione, ad esempio \Windows o Windows\System.
[FileCopy/Delete/RenameSezione/i] Elenca i file da copiare, eliminare o rinominare.
[RegistryUpdateSezione/i] Specifica le aggiunte o le eliminazioni dal registro di configurazione.
[IniFileUpdateSezione/i] Specifica gli aggiornamenti dei file ini. In questa sezione vengono creati i collegamenti.
[SourceDisksNames] Elenca i dischi contenenti i file.
[SourceDisksFiles] Elenca il disco specifico su cui si trova ciascun file.
[Strings] Elenca le stringhe localizzabili utilizzate in precedenza.
Torna all'inizio del file

Sezione versione

[Version]
Signature="$Chicago$"
LayoutFile=nomefileinf
Definisce l'intestazione standard per tutti i file inf di Windows. Se la firma non Φ $Chicago$, Windows non accetterα il file inf come tale per alcuna delle classi di periferiche riconosciute dallo stesso Windows.

Per il riconoscimento della stringa relativa alla firma non viene fatta distinzione tra maiuscole e minuscole. ╚ quindi possibile, ad esempio, utilizzare sia $Chicago$ che $CHICAGO$.

nome file inf
Denomina il file inf contenente le informazioni sul layout (dischi e file di origine) necessarie per installare il componente. Questa riga Φ opzionale. Se non specificate altrove, le sezioni SourceDisksNames e SourceDisksFiles devono essere specificate in questo file inf.

Di seguito Φ riportato un esempio di una tipica sezione Version.

[Version]
Signature="$CHICAGO$"

Torna all'inizio del file

Sezioni installazione

[nome-sezione-Install]

Copyfiles = sezione-elenco-file[,<sezione-elenco-file>]...
Renfiles = sezione-elenco-file[,sezione-elenco-file]...
Delfiles = sezione-elenco-file[,sezione-elenco-file]...
UpdateInis = sezione-aggiornamento-ini[,sezione-aggiornamento-ini]...
UpdateIniFields = sezione-aggiornamento-campi-ini[,sezione-aggiornamento-campi-ini]...
AddReg = sezione-aggiunta-registro[,sezione-aggiunta-registro]...
DelReg = sezione-eliminazione-dal-registro[,sezione-eliminazione-dal-registro]...
Ini2Reg = sezione-aggiunta-registro[,sezione-aggiunta-registro]...
UpdateCfgSys = sezione-aggiornamento-config
UpdateAutoBat =sezione-aggiornamento-autoexec

Identifica le sezioni aggiuntive nel file inf contenente le informazioni per l'installazione del componente.

Non tutti i tipi di elementi contenuti nella precedente sintassi sono necessari o richiesti in una sezione Install. Quando viene utilizzato un tipo di voce, si deve specificare il nome di una sezione nel file inf. Un'eccezione Φ costituita dalla voce CopyFiles, che pu≥ utilizzare il carattere "@" con un nome di file per copiare un solo file senza specificare un nome di sezione. Il nome di sezione deve essere costituito da caratteri stampabili.

In una sezione Install Φ possibile utilizzare una sola voce per ciascun tipo. In una voce Φ possibile elencare pi∙ di un nome di sezione, ma ogni nome aggiuntivo deve essere preceduto da una virgola.

nome-sezione-install
Se la sezione installazione viene denominata [DefaultInstall], verrα eseguita quando viene fatto clic sul file inf e quindi su Installa. Questa sezione viene eseguita anche quando si seleziona un file inf come opzione di installazione utilizzando la procedura guidata Cabpack.

Di seguito Φ riportato un esempio di una tipica sezione Install . Contiene le voci Copyfiles e AddReg che identificano le sezioni contenenti informazioni sui file da installare.

[MyApplication]
Copyfiles=MyAppWinFiles, MyAppSysFiles, @SRSutil.exe
AddReg=MyAppRegEntries

In questo esempio, notare che rinominando la sezione [MyApplication] in [DefaultInstall], la sezione install verrα eseguita quando viene fatto clic con il tasto destro sul file inf e quindi su Installa.

La voce CopyFiles fornisce una notazione speciale che consente di copiare un singolo file direttamente dalla riga di copia. Per copiare un singolo file, aggiungere al nome di file il prefisso @. La destinazione dei file copiati utilizzando tale notazione Φ DefaultDestDir, come definito nella sezione DestinationDirs . Il seguente esempio mostra come copiare singoli file.

CopyFiles=SezioneFile1,@miofile.txt,@altrofile.txt,NomeUltimaSezione

Torna all'inizio del file

Sezioni Copy Files (CopyFiles)

[nome-sezione-CopyFiles]
nome-file-destinazione[, nome-file-origine][,nome-file-temporaneo][,flag]
[nome-file-destinazione[,nome-file-origine][, nome-file-temporaneo]][,flag]

Elenca i nomi dei file da copiare da un disco di origine in una cartella di destinazione. Il disco di origine e la cartella di destinazione associati a ciascun file sono specificati in altre sezioni del file inf. Il nome di sezione-elenco-file deve essere contenuto nella voce CopyFiles di una sezione Install.

╚ possibile specificare di copiare un singolo file nella voce CopyFiles della stessa sezione Install senza creare una sezione CopyFiles. Utilizzare il carattere speciale "@" per forzare la copia di un singolo file. Un esempio di utilizzo del carattere "@" nella voce CopyFiles si trova nell'argomento di riferimento della sezione Install. Una copia di un file singolo di questo tipo Φ piuttosto limitata in quanto il nome del file di origine e di quello di destinazione devono, in questo caso, essere uguali e non Φ possibile utilizzare un file temporaneo.

nome-file-destinazione
Nome del file di destinazione. Se non viene specificato il nome del file di origine, questo viene considerato anche il nome del file di origine.

nome-file-origine
Nome del file di origine. Se il nome del file di origine e di quello di destinazione sono uguali, questo nome non Φ necessario.

nome-file-temporaneo
Nome di un file temporaneo per l'operazione di copia dei file. Il programma di installazione copia il file di origine ma gli assegna il nome temporaneo. Al successivo avvio del sistema operativo, il file temporaneo viene rinominato con il nome file di destinazione. Ci≥ si rivela utile per copiare i file in una destinazione attualmente aperta o utilizzata da Windows.

flag
Parametro opzionale utilizzato per eseguire operazioni speciali durante il processo di installazione. Sommando i valori Φ possibile utilizzare pi∙ flag per creare il flag combinato. ╚ possibile utilizzare i seguenti flag validi.

1 In CopyFiles: segnalare se l'utente cerca di ignorare il file.
1 In DelFiles. Se il file Φ in uso, accodare l'esecuzione delle eliminazioni in ritardo in Wininit.ini. In caso contrario, i file in uso non saranno eliminati.
2 Installazione critica: non consente all'utente di ignorare il file.
4 Ignorare il controllo della versione e copiare sempre i file. Il file pi∙ recente viene sovrascritto.
8 Forzare la ridenominazione. Il programma di installazione considera il file come se fosse in uso. Ci≥ accade soltanto se il file esiste giα sul computer dell'utente.
16 Se il file esiste giα a destinazione, non eseguire la copia.
32 Non visualizzare la finestra di dialogo dei conflitti di versione e non sovrascrivere i file pi∙ recenti.

Nel seguente esempio vengono copiati tre file.

[CopyTheseFilesSec]
file11 ; copia il file11
file21, file22, file23 ; copia il file22, denominandolo temporaneamente file23
file31, file32 ; copia il file32 sul file31

Tutti i nomi di file di origine utilizzati in questo esempio devono essere definiti in una sezione SourceDisksFiles e i numeri dei dischi logici che compaiono nella sezione SourceDisksFiles devono essere stati definiti in una sezione SourceDisksNames. In alternativa, per fornire tali informazioni Φ possibile utilizzare un file LayoutINF.

Torna all'inizio del file

Sezioni Rename Files (RenFiles)

[nome-sezione-rinomina-file]
nome-nuovo-file, nome-vecchio-file
.
.
Elenca i nomi dei file da rinominare. Il nome della sezione deve comparire in una voce Renfiles in una sezione Install del file inf.

nome-nuovo-file
Nuovo nome del file.

nome-vecchio-file
Vecchio nome del file.

Il seguente esempio rinomina file42 in file41, file52 in file51 e file62 in file61.

[RenameOldFilesSec]
file41, file42
file51, file52
file61, file62

Tutti i vecchi nomi di file utilizzati nell'esempio (file42, file52 e file62) devono essere definiti in una sezione SourceDisksFiles e i numeri dei dischetti logici che compaiono nella sezione SourceDisksFiles devono essere stati definiti in una sezione SourceDisksNames.

Torna all'inizio del file

Sezioni Delete Files (DelFiles)

[ sezione-elenco-file]
nome-file[,,,flag]
.
.
Una sezione
DelFiles elenca i nomi dei file da eliminare. Il nome di sezione-elenco-file deve comparire nella voce Delfiles di una sezione Install.

nome-file
Identifica un file da eliminare.

flag
Parametro opzionale utilizzato per forzare Windows a eliminare il file denominato nella voce se in uso durante il processo di installazione. Per segnalare a Windows di accodare l'operazione di eliminazione del file finchΘ il computer viene riavviato, impostare il valore del parametro flag a 1. Se un file contrassegnato dall'impostazione del parametro flag a 1 non pu≥ essere eliminato perchΘ in uso, al termine dell'installazione della periferica il sistema verrα riavviato.

Se non si utilizza il valore del parametro flag uguale a 1 con un parametro nome-file, il file non verrα eliminato dal computer se Φ in uso durante l'esecuzione della sezione DelFiles.

Nel seguente esempio vengono eliminati tre file.

[DeleteOldFilesSec]
file1
file2
file3

Torna all'inizio del file

Sezioni Update ini File (UpdateInis)

[ nome-sezione-aggiornamento-ini]
file-ini, sezione-ini, [vecchia-voce-ini], [nuova-voce-ini], [flag]
.
.
Sostituisce, elimina o aggiunge voci complete nel file ini specificato. Il nome di sezione, nome-sezione-aggiornamento-ini, deve comparire nella voce UpdateInis in una sezione Install del file inf.

file-ini
Nome del file ini contenente la voce da modificare. Per ulteriori informazioni sulla definizione del nome del file .ini, vedere i seguenti commenti.

sezione-ini
Nome della sezione contenente la voce da modificare.

vecchia-voce-ini
Opzionale. Generalmente ha il formato Chiave=Valore.

nuova-voce-ini
Opzionale. Generalmente ha il formato Chiave=Valore. Sia la chiave che il valore possono specificare stringhe sostituibili. Sia la chiave che il valore specificati nel parametro nuova-voce-ini possono ad esempio corrispondere a %String1%, dove la stringa che sostituisce %String1% Φ definita nella sezione Strings del file inf.

flag
Flag di operazioni opzionali. Pu≥ corrispondere a uno dei seguenti valori.

0 Predefinito. Se la chiave vecchia-voce-ini Φ presente in una voce del file ini, tale voce viene sostituita con nuova-voce-ini. Soltanto le chiavi del parametro vecchia-voce-ini e della voce del file inf devono corrispondere; il valore di ciascuna voce viene ignorato.

Per aggiungere senza alcuna condizione nuova-voce-ini al file ini, impostare vecchia-voce-ini su NULL. Per eliminare senza alcuna condizione vecchia-voce-ini dal file ini, impostare nuova-voce-ini su NULL.

1 Se sia la chiave che il valore di vecchia-voce-ini esistono giα in una voce del file ini, quella voce viene sostituita con nuova-voce-ini. AffinchΘ la sostituzione venga eseguita, Φ necessario che il parametro vecchia-voce-ini e la voce del file inf corrispondano. Ci≥ contrasta con l'utilizzo di un valore del flag di operazione uguale a 0, in cui, affinchΘ la sostituzione venga eseguita, Φ necessario che corrispondano soltanto le chiavi.
2 Se la chiave del parametro vecchia-voce-ininon esiste nel file ini, in quest'ultimo non viene eseguita alcuna operazione.

Se sia la chiave del parametro vecchia-voce-iniche la chiave del parametro nuova-voce-iniesistono in una voce del file ini, la voce del file ini che corrisponde alla chiave del parametro nuova-voce-iniviene eliminata e la voce del file ini che corrisponde al parametro vecchia-voce-iniviene trattata nel modo seguente. la chiave della voce del file ini viene sostituita con la chiave del parametro nuova-voce-ini.

Se la chiave del parametro vecchia-voce-iniesiste in una voce del file ini e la chiave del parametro nuova-voce-ininon esiste in alcuna voce del file ini, al file ini viene aggiunta una voce costituita dalla chiave del parametro nuova-voce-inie dal vecchio valore.

La corrispondenza del parametro vecchia-voce-inie della voce del file ini si basa sulla sola chiave, non sulla chiave e sul valore.

3 Uguale al valore del parametro del flag 2 sopra descritto, tranne per la corrispondenza del parametro vecchia-voce-ini e una voce del file inf basata sulla corrispondenza sia della chiave che del valore, non soltanto della chiave.
Quando si specificano la chiave e il valore, Φ possibile utilizzare il carattere jolly asterisco (*) e si avrα una corretta interpretazione.

Il nome file-ini pu≥ corrispondere a una stringa o a una chiave di stringhe. Una chiave di stringhe ha il formato %chiave stringa%, in cui chiave stringa Φ definito nella sezione Strings del file inf. In entrambi i casi, il nome deve essere costituito da un nome di file valido.

Il nome deve comprendere il nome della cartella contenente il file, ma il nome della cartella deve essere specificato come identificatore logico della directory (LDID) piuttosto che come nome reale. Il programma di installazione sostituisce gli LDID con nomi reali durante l'installazione.

Un LDID ha il formato %ldid%, in cui ldid Φ uno degli identificatori predefiniti o un identificatore definito nella sezione DestinationDirs. Quando le costanti LDID_BOOT e LDID_BOOTHOST vengono sostituite, la barra rovesciata (\) viene compresa nel percorso. LDID_BOOT pu≥ ad esempio essere sostituito da C:\. Nel file inf Φ tuttavia possibile utilizzare o non utilizzare la barra rovesciata. Ad esempio, per riferirsi a BOOT.ini nella cartella principale dell'unitα di avvio Φ possibile utilizzare "%30%boot.ini" oppure "%30%\boot.ini".

I seguenti esempi illustrano voci individuali di una sezione Update ini File di un file inf.

%11%\esempio.ini, Sezione1,, Value1=2 ; aggiunge una nuova voce
%11%\esempio.ini, Sezione2, Value3=*, ; elimina una vecchia voce
%11%\esempio.ini, Sezione4, Value5=1, Value5=4 ; sostituisce una vecchia voce

La serie di voci che segue contenuta in una sezione Update ini File di un file inf interviene sulla sezione Boot di SYSTEM.ini. Le condizioni create nel parametro flag delle voci del file inf vengono utilizzate per aggiungere la voce "comm.drv=comm.drv" alla sezione Boot a meno che in tale sezione esistano le voci "comm.drv=*vcoscomm.drv" o "comm.drv=*r0dmdcom.drv", nel qual caso la voce esistente viene preservata e la voce "comm.drv=comm.drv" non viene aggiunta al file ini. Dopo che le quattro voci del file inf sono state eseguite, vi sarα una voce "comm.drv=" nella sezione Boot del file ini. "comm.drv=*vcoscomm.drv", "comm.drv=*r0dmdcom.drv" o "comm.drv=comm.drv."

system.ini, boot, "comm.drv=*vcoscomm.drv","~CommDrvTemp~=*", 3
system.ini, boot, "comm.drv=*r0dmdcom.drv","~CommDrvTemp~=*", 3
system.ini, boot,,"comm.drv=comm.drv"
system.ini, boot, "~CommDrvTemp~=*","comm.drv=*", 3

Torna all'inizio del file

Sezioni Update ini Fields (UpdateIniFields)

[ nome-sezione-aggiornamento-campi ini ]
file-ini, sezione-ini, nome-profilo, [vecchio-campo], [nuovo-campo],[flag]
.

.
Sostituisce, aggiunge ed elimina i campi nel valore di una determinata voce ini. A differenza della sezione Update ini File, questo tipo di sezione sostituisce, aggiunge o elimina soltanto una parte di un valore in una voce di un file ini, anzichΘ tutto il valore. Il nome di sezione, nome-sezione-aggiornamento-campi-ini, deve comparire nella voce UpdateIniFields in una sezione Install del file inf.

file-ini
Nome del file ini che contiene le voci da modificare. Per ulteriori informazioni sulla definizione del nome del file ini, vedere l'argomento relativo alla sezione Update ini File.

sezione-ini
Nome della sezione del file .ini che contiene la voce da modificare.

nome-profilo
Nome della voce da modificare.

vecchio-campo
Valore del campo da eliminare.

nuovo-campo
Valore del campo da aggiungere, se non ancora esistente.

flag
Specifica se trattare i parametri vecchio-campo e nuovo-campo come se avessero o non avessero un carattere jolly e/o il carattere separatore da utilizzare quando si aggiunge un campo nuovo a un file ini. Pu≥ corrispondere a uno dei seguenti valori.

Valore Significato
0 (Predefinito) Considera il carattere "*" letteralmente quando si cerca una corrispondenza tra i campi e non come carattere jolly. Quando si aggiunge un campo nuovo a una voce, come separatore utilizzare uno spazio vuoto (" ").
1 Considera il carattere "*" come carattere jolly quando si cerca una corrispondenza tra i campi. Quando si aggiunge un campo nuovo a una voce, come separatore utilizzare uno spazio vuoto (" ").
2 Considera il carattere "*" letteralmente quando si cerca una corrispondenza tra i campi e non come carattere jolly. Quando si aggiunge un campo nuovo a una voce, come separatore utilizzare una virgola (",").
3 Considera il carattere "*" come carattere jolly quando si cerca una corrispondenza tra i campi. Quando si aggiunge un campo nuovo a una voce, come separatore utilizzare una virgola (",").
Tutti i commenti nella riga del file ini vengono rimossi perchΘ non sono applicabili dopo le modifiche. Quando i campi di questa riga del file ini vengono elaborati, come delimitatori di campo vengono utilizzati, spazi, tabulazioni e virgole. Quando tuttavia alla riga viene aggiunto un campo nuovo, come separatore viene utilizzato uno spazio.
Torna all'inizio del file

Sezioni Add Registry (AddReg)

[ sezione-aggiunta-registro]
stringa-principale-reg, [sottochiave], [nome-valore], [valore]
[stringa-principale-reg, [sottochiave], [nome-valore], [flag], [valore]]
.
.
Aggiunge sottochiavi o nomi di valori al registro, impostando opzionalmente il valore. Il nome sezione-aggiunta-registro deve comparire in una voce AddReg di una sezione Install.

stringa-principale-reg
Nome principale del registro. Pu≥ corrispondere a uno dei seguenti valori.

HKCR Φ uguale a HKEY_CLASSES_ROOT
HKCU Φ uguale a HKEY_CURRENT_USER
HKLM Φ uguale a HKEY_LOCAL_MACHINE
HKU Φ uguale a HKEY_USERS.
HKR significa relativo rispetto alla chiave immessa in GenInstallEx

sottochiave
Opzionale. Identifica la sottochiave da impostare. Ha il formato chiave1\chiave2\chiave3.... Il parametro pu≥ essere espresso come stringa sostituibile. ╚ ad esempio possibile utilizzare %Subkey1%, in cui la stringa da sostituire a %Subkey1% Φ definita nella sezione Strings del file inf.

nome-valore
Opzionale. Identifica il nome del valore per il parametro sottochiave. Per il tipo di stringa, se il parametro nome-valore viene lasciato vuoto, il valore della sottochiave specificata nel parametro sottochiave Φ impostato su una stringa NULL. Il parametro nome-valore pu≥ essere espresso come stringa sostituibile. ╚ ad esempio possibile utilizzare %Valname1%, in cui la stringa da sostituire a %Valname1% Φ definita nella sezione Strings del file inf.

flag
Opzionale. Determina sia il tipo di valore che se la chiave di registro viene sostituita se giα esistente.

Valore Significato
0 (Predefinito) Il valore Φ una stringa ANSI. Sostituire la chiave se esistente.
1 Il valore Φ un numero esadecimale. Sostituire la chiave se esistente.
2 Il valore Φ una stringa ANSI. Non sostituire la chiave se esistente.
3 Il valore Φ un numero esadecimale. Non sostituire la chiave se esistente.
valore
Opzionale. Valore da impostare. Pu≥ corrispondere a una stringa ANSI o a un numero in notazione esadecimale e formato Intel. Qualsiasi voce contenente un valore binario pu≥ essere estesa oltre il valore massimo della riga di 128 byte utilizzando una barra rovesciata (\). ╚ possibile specificare anche una chiave di stringa nel formato %chiavestringa%. chiavestringadeve essere definito nella sezione Strings del file inf. Per utilizzare un carattere % nella riga, usare %%.

Sono necessari almeno due campi, ma uno pu≥ essere nullo. Quando si utilizza tale formato, Φ richiesta pertanto almeno una virgola.

Le due voci della seguente sezione AddReg aggiungono due nomi di valori al registro. Notare che %25% sarα esteso alla cartella Windows del computer.

[VociRegMiaApp]
HKLM,Software\MiaApp,NomeProgramma,,"Mia applicazione"
HKLM,Software\MiaApp,"Posizione Programma",,"%25%\MiaApp.exe"

Torna all'inizio del file

Sezioni Delete Registry (DelReg)

[ sezione-eliminazione-registro]
stringa-principale-reg, sottochiave, [nome-valore]
[stringa-principale-reg, sottochiave, [nome-valore]]
.
.
Elimina una sottochiave o un nome di valore dal registro. Il nome sezione-eliminazione-registro deve comparire in una voce DelReg in una sezione Install.

stringa-principale-reg
Nome principale del registro. Pu≥ corrispondere a uno dei seguenti valori.

HKCR Uguale a HKEY_CLASSES_ROOT
HKCU Uguale a HKEY_CURRENT_USER
HKLM Uguale a HKEY_LOCAL_MACHINE
HKU Uguale a HKEY_USERS.
HKR significa relativo rispetto alla chiave immessa in GenInstallEx

sottochiave
Identifica la sottochiave da eliminare. Ha il formato key1\key2\key3... Il parametro pu≥ essere espresso come stringa sostituibile. ╚ ad esempio possibile utilizzare %Subkey1%, in cui la stringa da sostituire a %Subkey1% Φ definita nella sezione Strings del file inf.

nome-valore
Opzionale. Identifica il nome del valore per il parametro sottochiave. Il parametro nome-valore pu≥ essere espresso come stringa sostituibile. ╚ ad esempio possibile utilizzare %Valname1%, in cui la stringa da sostituire a %Valname1% Φ definita nella sezione Strings del file inf.

Questo tipo di sezione pu≥ contenere un numero qualsiasi di voci. Ciascuna voce elimina una sottochiave o un nome di valore dal registro.

Sezioni Ini File to Registry (Ini2Reg)

[ sezione-ini-a-registro]
file-ini, sezione-ini, [chiave-ini], stringa-principale-reg, sottochiave[,flag]
.
.
Sposta le righe o le sezioni da un file ini nel registro, creando o sostituendo una voce di registro sotto una determinata chiave nel registro. Il nome di sezione sezione-ini-a-registro deve comparire in una voce Ini2Reg di una sezione Install del file inf.

file-ini
Nome del file ini contenente la chiave da copiare. Per ulteriori informazioni sulla definizione del nome del file ini, vedere i commenti nell'argomento di riferimento relativo alla sezione Update ini File.

sezione-ini
Nome della sezione del file ini contenente la chiave da copiare.

chiave-ini
Nome della chiave del file ini da copiare nel registro. Se chiave-ini Φ vuoto, l'intera sezione viene trasferita nella chiave di registro specificata.

stringa-principale-reg
Nome principale del registro. Pu≥ corrispondere a uno dei seguenti valori.

HKCR Φ uguale a HKEY_CLASSES_ROOT
HKCU Φ uguale a HKEY_CURRENT_USER
HKLM Φ uguale a HKEY_LOCAL_MACHINE
HKU Φ uguale a HKEY_USERS.
HKR significa relativo rispetto alla chiave immessa in GenInstallEx

sottochiave
Identifica la sottochiave per ricevere il valore. Ha il formato chiave1\chiave2\chiave3...

flag
Indica se eliminare la chiave ini dopo il trasferimento nel registro e se sovrascrivere il valore del registro se la chiave del registro esiste giα. Pu≥ corrispondere a uno dei seguenti valori.

Valore Significato
0 (Predefinito) Non eliminare la voce ini dal file ini dopo avere spostato le informazioni della voce nel registro. Se la sottochiave del registro esiste giα, non sostituirne il valore attuale.
1 Eliminare la voce ini dal file ini dopo avere spostato le informazioni della voce nel registro. Se la sottochiave del registro esiste giα, non sostituirne il valore attuale.
2 Non eliminare la voce ini dal file ini dopo avere spostato le informazioni della voce nel registro. Se la sottochiave del registro esiste giα, sostituirne il valore attuale con il valore della voce del file ini.
3 Eliminare la voce ini dal file ini dopo avere spostato le informazioni della voce nel registro. Se la sottochiave del registro esiste giα, sostituirne il valore attuale con il valore della voce del file ini.
Si supponga ad esempio che la voce seguente esista giα nel file Win.ini.

[Windows]
CursorBlinkRate=15

Se sotto Control Panel\Desktop non esiste una sottochiave CursorBlinkRate, la seguente voce in una sezione Ini File to Registry crea la sottochiave, imposta il valore della sottochiave a 15 e lascia inalterata la riga originale WIN.ini.

win.ini,Windows,CursorBlinkRate,HKCU,"Control Panel\Desktop"

Se la sottochiave esiste giα, la voce del file inf imposta il valore della sottochiave a 15 e lascia inalterata la riga originale in WIN.ini.

Sezioni Update Config.sys (UpdateCfgSys)

[ sezione-aggiornamento-config]
Buffers=valore-buffer-dos-valido
DelKey=chiave
DevAddDev=nome-driver,parolachiaveconfig[,flag][,stringa-param]
DevDelete=nome-perif-corrente
DevRename=nome-perif-corrente,nome-nuova-perif
Files=valore-file-dos-valido
PrefixPath=ldid[,ldid]
RemKey=chiave
Stacks=valori-stack-dos-validi

Fornisce i comandi per aggiungere, eliminare o rinominare i comandi nel file Config.sys. Il nome di sezione, nome-sezione-aggiornamento-config, deve comparire nella voce UpdateConfigSys di una sezione Install del file inf.

Non tutti i tipi di voci presenti nella sintassi precedente sono necessari o richiesti. Una sezione Update Config.sys pu≥ contenere il numero necessario di voci DevRename, DevDelete, DevAddDev, DelKey e RemKey, ma le voci Buffers, Files e Stacks possono essere utilizzate soltanto una volta in una sezione. Quando si elabora una sezione Update Config.sys, il programma di installazione elabora per prime tutte le voci DevRenames , poi tutte le voci DevDelete e infine tutte le voci DevAddDev. La sintassi e il significato di ognuno di questi tipi di voci utilizzabili in una sezione Update Config.sys sono disponibili pi∙ avanti in questo argomento.

Voce Buffers

Buffers=valore-buffer-dos-valido
Imposta il numero di buffer dei file. Come con la voce Stacks, il programma di installazione confronta il valore esistente con il valore proposto e imposta sempre i buffer dei file sul valore maggiore tra i due.

valore-buffer-dos-valido
Un valore dei buffer MS-DOS valido.

Voce DelKey

DelKey=chiave
Fa s∞ che il comando Config.sys con la chiave specificata sia evidenziato nel file Config.sys. Ad esempio, la seguente voce del file inf.

DelKey=Break

mette in evidenza nel file Config.sys un comando Break=on.

La voce DelKey produce lo stesso effetto della voce RemKey . In una sezione del file inf vi possono essere pi∙ voci DelKey e/o RemKey .

chiave
La chiave del comando Config.sys da evidenziare.

Voce DevAddDev

DevAddDev=nome-driver,parolachiaveconfig[,flag][,stringa-param]
Aggiunge un comando device o install al file CONFIG.SYS.

nome-driver
Nome del driver o del file eseguibile da aggiungere. Il programma di installazione convalida l'estensione del nome file, garantendo che sia sys o exe.

parolachiaveconfig
Nome comando. Pu≥ essere device o install.

flag
Flag di posizionamento opzionale. Se 0, il comando viene posizionato alla fine del file. Se 1, Φ posizionato in cima al file. Se non specificato, in base all'impostazione predefinita viene utilizzato 0.

stringa-param
Parametri di comando opzionali. Devono essere validi per il driver della periferica o il file eseguibile specificati.

Voce DevDelete

DevDelete=nome-driver-periferica
Elimina qualsiasi riga contenente il nome di file specificato dal file Config.sys.

nome-driver-periferica
Nome di un file o driver di periferica. Il programma di installazione cerca nel file Config.sys il nome ed elimina tutte le righe che lo contengono. PoichΘ MS-DOS non accetta estensioni dei nomi di file implicite in Config.sys, ciascun nome-driver-periferica deve esplicitamente specificare l'estensione del nome di file.

La seguente voce di esempio DevDelete di una sezione Update Config.sys elimina le righe 1 e 3 ma non la riga 2 del file di esempio Config.sys:

DevDelete=nomefile.sys

;; righe in Config.sys
Device=Nomefile.sys ;; riga1
Install=Nomefile.exe ;; riga2
Device=Nomefile.sys /d:b800 /I:3 ;; riga3

Voce DevRename

DevRename=nome-perif-corrente,nome-nuova-perif
Rinomina un driver di periferica nel file Config.sys.

nome-perif-corrente
Nome del driver di periferica o del file eseguibile da rinominare. Il programma di installazione cerca il nome sul lato destro di un comando device o install nel file Config.sys.

nome-nuova-perif
Nuovo nome del driver o del file eseguibile.

Voce Files

Files=valore-file-dos-valido
Imposta il numero massimo di file aperti nel file Config.sys. Come con la voce Stacks, il programma di installazione confronta il valore esistente con il valore proposto e imposta sempre il numero massimo di file aperti sul valore maggiore tra i due.

valore-file-dos-valido
Un valore dei file di MS-DOS validi.

Voce PrefixPath

PrefixPath=ldid[,ldid]...
Appende al comando path il percorso associato all'LDID dato.

ldid
Pu≥ corrispondere a qualsiasi dei valori LDID predefiniti o a un nuovo valore definito nel file inf. Per una definizione di tutti i valori LDID predefiniti, vedere l'argomento di riferimento relativo alla sezione DestinationDirs.

Voce RemKey

RemKey=chiave
Fa s∞ che il comando Config.sys con la chiave specificata sia evidenziato nel file Config.sys. Ad esempio, la seguente voce del file inf.

RemKey=Break

mette in evidenza nel file Config.sys un comando Break=on.

La voce RemKey produce lo stesso effetto della voce DelKey . In una sezione del file inf vi possono essere pi∙ voci RemKey e/o DelKey.

chiave
La chiave del comando Config.sys da evidenziare.

Voce Stacks

Stacks=valori-stack-dos-validi
Imposta il numero e le dimensioni degli stack nel file Config.sys. Il programma di installazione confronta il valore esistente con il valore proposto e imposta sempre gli stack sul valore maggiore tra i due. Se Config.sys ad esempio contiene stack=9.218 e un file inf contiene stack=5.256, il programma di installazione imposta il nuovo valore su stack=9.256.

valori-stack-dos-validi
Un valore degli stack di MS-DOS valido.

Torna all'inizio del file

Sezioni Update Autoexec.bat (UpdateAutoBat)

[ sezione-aggiornamento-autoexec]
CmdAdd=nome-comando[,parametri-comando]
CmdDelete=nome-comando
PrefixPath=ldid[,ldid]
RemOldPath=ldid[,ldid]
TmpDir=ldid[,sottodir]
UnSet=nome-var-ambiente

Fornisce i comandi per gestire le righe del file Autoexec.bat. Il nome di sezione, nome-sezione-aggiornamento-autoexec, deve comparire nella voce UpdateAutoBat di una sezione Install del file inf.

Non tutti i tipi di voci contenuti nella sintassi precedente sono necessari o richiesti in una sezione Update Autoexec.bat. La sezione pu≥ contenere il numero necessario di voci CmdAdd, CmdDelete e UnSet, ma in un file inf Φ possibile utilizzare soltanto una voce PrefixPath, RemOldPath e TmpDir. La sintassi e il significato di ciascun tipo di voce sono descritti pi∙ avanti in questo argomento.

Il programma di installazione elabora innanzitutto tutte le voci CmdDelete, quindi tutte le voci CmdAdd.

Voce CmdAdd

CmdAdd =nome-comando[,"parametri-comando"]
Aggiunge il comando specificato e i parametri opzionali del comando alla fine del file Autoexec.bat.

nome-comando
Nome di un file eseguibile, con o senza estensione. Se il nome di file Φ definito anche nelle sezioni SourceDisksFiles e DestinationDirs del file inf, il programma di installazione aggiunge il percorso corretto al nome di file prima di scriverlo nel file Autoexec.bat.

parametri-comando
Una stringa racchiusa tra doppie virgolette o una stringa sostituibile come %String1% o %Myparam%, in cui le stringhe che sostituiscono %String1% e %Myparam% sono definite nella sezione Strings del file inf. Il programma di installazione aggiunge la stringa a nome-comando prima di aggiungere la riga alla fine del file Autoexec.bat. Il formato di questa riga dipende dai requisiti della riga di comando del file eseguibile specificato.

Voce CmdDelete

CmdDelete=nome-comando
Elimina tutte le righe nel file Autoexec.bat che contengono il nome del comando specificato. Il programma di installazione cerca ed elimina tutte le occorrenze del nome specificato con estensione exe, com e bat.

nome-comando
Nome di un file eseguibile senza estensione.

Voce PrefixPath

PrefixPath=ldid[,ldid]...
Appende al comando path il percorso associato all'LDID dato.

ldid
Pu≥ corrispondere a qualsiasi dei valori LDID predefiniti o a un nuovo valore definito nel file. Per una definizione di tutti i valori LDID predefiniti, vedere l'argomento di riferimento relativo alla sezione DestinationDirs.

Voce RemOldPath

RemOldPath=ldid[,ldid]
Rimuove il percorso associato all'LDID specificato dal comando path. Se l'utente ad esempio installa la nuova versione di Windows in C:\NuovoWin e ha una copia precedente di Windows in C:\Windows, la seguente voce del file inf rimuove C:\Windows dalla variabile di ambiente path:

RemOldPath=10

ldid
Pu≥ corrispondere a qualsiasi dei valori LDID predefiniti o a un nuovo valore definito nel file inf. Per una definizione di tutti i valori LDID predefiniti, vedere l'argomento di riferimento relativo alla sezione DestinationDirs.

Voce TmpDir

TmpDir=ldid[,sottodir]
Crea una cartella temporanea all'interno della cartella specificata dall'LDID, se non esiste giα.

ldid
Pu≥ corrispondere a qualsiasi dei valori LDID predefiniti o a un nuovo valore definito nel file inf. Per una definizione di tutti i valori LDID predefiniti, vedere l'argomento di riferimento relativo alla sezione DestinationDirs.

sottodir
Un nome di percorso. Se ldid\sottodir non esiste giα, viene creato.

Voce UnSet

UnSet=nome-var-ambiente
Rimuove tutti i comandi set dal file Autoexec.bat che include il nome della variabile di ambiente specificato.

nome-var-ambiente
Nome di una variabile di ambiente.

Torna all'inizio del file

Sezione DestinationDirs

[DestinationDirs]
sezione-elenco-file =ldid[, sottodir ]
.
.
[DefaultDestDir=ldid[, sottodir ]]

La sezione DestinationDirs definisce le cartelle di destinazione per le operazioni specificate nelle sezioni elenco-file, ossia CopyFiles, RenFiles o DelFiles. Opzionalmente, Φ possibile specificare una cartella di destinazione predefinita per le sezioni CopyFiles, RenFiles o DelFiles nel file inf non esplicitamente denominate nella sezione DestinationDirs.

sezione-elenco-file
Nome di una sezione CopyFiles, RenFiles o DelFiles. Al nome si deve fare riferimento in una voce Copyfiles, RenFiles o DelFiles di una sezione Install.

ldid
Un identificatore logico del disco (LDID). Pu≥ corrispondere a uno dei seguenti valori.

00 LDID nullo - pu≥ essere utilizzato per creare un nuovo LDID
01 Unitα di origine:\nomepercorso
10 Cartella Machine (si mappa sulla cartella di Windows in un'installazione basata su server)
11 Cartella System
12 Cartella IOSubsys
13 Cartella Command
17 Cartella Inf
18 Cartella Help
20 Fonts
21 Viewers
22 VMM32
23 Cartella Color
24 Cartella principale dell'unitα contenente la cartella Windows
25 Cartella Windows
26 Periferica di avvio garantita per Windows (Winboot)
28 Host Winboot
30 Cartella principale dell'unitα di avvio
31 Cartella principale dell'unitα host di un'unitα di avvio virtuale
sottodir
Nome della cartella all'interno della cartella denominata dall'LDID come cartella di destinazione.

La voce opzionale DefaultDestDir fornisce una destinazione predefinita per tutte le voci CopyFiles che utilizzano la notazione di copia diretta (@nome file) o le sezioni CopyFiles, RenFiles o DelFiles non specificate nella sezioneDestinationDirs. Se una sezione DefaultDestDir non viene utilizzata in una sezioneDestinationDirs, la cartella predefinita viene impostata su LDID_WIN.

Il seguente esempio imposta la cartella di destinazione per la sezione MoveMiniPort su Windows\Iosybsys e la cartella predefinita per le altre sezioni sulla cartella Bin nell'unitα di avvio:

[DestinationDirs]
MoveMiniPort=12 ; La destinazione per la sezione MoveMiniPort Φ
; windows\iosubsys
DefaultDestDirs=30,bin ; Copie dirette in boot:\bin

Torna all'inizio del file

Sezione SourceDisksNames

[SourceDisksNames]
ordinale-disco="descrizione-disco",etichetta-disco,numero-serie-disco
.
.
Identifica i nomi e i dischi contenenti i file di origine per le operazioni di copia e ridenominazione dei file.

ordinale-disco
Un numero univoco che identifica un disco di origine. Se vi sono pi∙ dischi di origine, a ognuno deve corrispondere un numero ordinale univoco.

descrizione-disco
Una stringa o una chiave di stringhe che descrive il contenuto o la funzione del disco. Il programma di installazione visualizza la stringa all'utente per identificare il disco. La descrizione Φ racchiusa tra doppie virgolette.

etichetta-disco
L'etichetta di volume del disco di origine impostata quando viene formattato.

numero-serie-disco
Non utilizzato. Il valore deve essere uguale a 0.

Questo esempio identifica un disco di origine. La descrizione del disco viene specificata come chiave di stringhe:

[SourceDisksNames]
55 = %ID1%, Instd1, 0

[Strings]
ID1="Disco 1 di Installazione Mia Applicazione 1"

Torna all'inizio del file
Sezione SourceDisksFiles

[SourceDisksFiles]
nome file=numero-disco[,sottodir] [,dimensione-file]
.
.
color=#000000Nomina i file di origine utilizzati durante l'installazione e identifica i dischi di origine contenenti i file.

color=#000000nome file
color=#000000Nome del file sul disco di origine.

numero-disco
color=#000000Numero ordinale del disco di origine contenente il file. Questo numero ordinale deve essere definito nella sezione SourceDisksNames e deve avere un valore maggiore o uguale a 1 (zero non Φ un valore valido per il parametro numero-disco).

sottodir
Parametro opzionale che specifica la sottocartella sul disco di origine dove risiede il file. Se questo parametro non viene utilizzato, il valore predefinito corrisponde alla cartella principale del disco di origine.

dimensione-file Parametro opzionale che specifica le dimensioni del file in byte.

color=#000000La seguente sezione di esempio SourceDisksFiles identifica un singolo file di origine, SRS01.386, sul disco con il numero ordinale 1.

[SourceDisksFiles]
SRS01.386 = 1

Torna all'inizio del file

Sezione Strings

[Strings]
chiave-stringhe=valore
.
.
Definisce una o pi∙ chiavi di stringhe. Una chiave di stringhe Φ un nome che rappresenta una stringa di caratteri stampabili. Sebbene la sezione Strings sia generalmente l'ultima sezione del file inf, una chiave di stringhe definita in questa sezione pu≥ essere utilizzata in qualsiasi punto del file inf in cui viene utilizzata la stringa corrispondente. Il programma di installazione espande la chiave di stringhe alla stringa specificata e la utilizza per ulteriori elaborazioni. Le chiavi di stringhe devono essere racchiuse tra segni di percentuale (%).

chiave-stringhe
Un nome univoco costituito da lettere e cifre.

valore
Una stringa costituita da lettere, cifre o altri caratteri stampabili. Deve essere racchiusa tra doppie virgolette se la chiave delle stringhe corrispondente viene utilizzata in un tipo di voce che richiede le doppie virgolette.

La sezione Strings esegue la traduzione delle stringhe per i mercati internazionali pi∙ facilmente posizionando tutte le stringhe visualizzabili nell'interfaccia utente quando il file inf viene utilizzato in una sola sezione del file inf. Le chiavi di stringhe devono essere sempre utilizzate qualora sia possibile.

L'esempio seguente mostra la sezione Strings per un file inf di esempio.

[Strings]
String0="Mia Applicazione"
String1="File Leggimi Mia Applicazione"
String2="Scheda SCSI CX2590"

Torna all'inizio del file

Sezione Optional Components

[Optional Components]
nome-sezione-install
[nome-sezione-Install]
.
.
Elenca le sezioni Install visualizzate quando l'utente sceglie l'icona Installazione applicazioni nel Pannello di controllo, fa clic sulla scheda Installazione di Windows, quindi sceglie il pulsante Disco driver. Le sezioni Install sono visualizzate come caselle di controllo nell'elenco.

La sezione Optional Components viene ignorata quando si esegue un file inf facendo clic con il pulsante destro del mouse sul file inf e selezionando il verbo "install". Quando si esegue un file inf in questo modo, viene eseguita la sezione [DefaultInstall]. La sezione Optional Components viene ignorata anche se il file inf viene eseguito per mezzo del punto di ingresso InstallHinfSection di Setupx.dll. Quando si esegue un file inf per mezzo del punto di ingresso SETUPX, viene eseguita la sezione Install specificata nel parametro sul punto di ingresso.

Le sezioni Install seguono lo stesso formato descritto precedentemente. Alla sezione Install Φ possibile inoltre aggiungere delle chiavi aggiuntive per guidare l'interfaccia nella finestra di dialogo "Disco driver".

OptionDesc=descrizione-opzione
Tip=descrizione-suggerimento
InstallDefault=0 | 1 ; Se installare questo componente in base all'impostazione predefinita. 1=S∞, 0=No.
IconIndex=indice-icona
Parent=nome-sezione-Install
Needs=nome-sezione-Install, [nome-sezione-Install]
Include=file-inf, [file-inf]

descrizione-opzione
Valore della stringa utilizzato come nome del componente nella casella di riepilogo. Il parametro descrizione-opzione pu≥ essere %String1%, in cui la stringa che sostituisce %String1% Φ definita nella sezione Strings del file inf.

descrizione-suggerimento
Valore della stringa visualizzata nella casella Descrizione quando il componente viene selezionato nella casella di riepilogo. Il parametro descrizione-suggerimento ha un limite di 255 caratteri e pu≥ essere %String1%, in cui la stringa che sostituisce %String1% Φ definita nella sezione Strings del file inf.

indice-icona
Valore numerico che determina la mini icona visualizzata accanto al nome del componente. I valori validi sono: 0 Computer (base e schermo)
1 Circuito integrato
2 Schermo
3 Cavi di rete
4 Bandiera di Windows
5 Mouse
6 Tastiera (3 tasti)
7 Telefono
8 Altoparlanti
9 Dischi rigidi
10 Connettore Comm
11 Rombo (valore predefinito)
12 Casella selezionata
13 Casella non selezionata
14 Stampante
15 Scheda di rete
16 Uguale a 0
17 Uguale a 0 w/ con mano per la condivisione
18 Sconosciuto (?)
19 Modello del logo
20 Casella di controllo ombreggiata
21 Accesso remoto
22 Connessione diretta via cavo
23 Sincronia file
24 Exchange
25 Selezione parziale
26 Gruppo Accessori
27 Gruppo Multimedia
28 Anteprima
29 MSN
30 Calcolatrice
31 Utilitα di deframmentazione dischi
32 Documento generico
33 DriveSpace
34 Solitario
35 HyperTerminal
36 Packager
37 Paint
38 Screen saver
39 WordPad
40 Visualizzatore Cartella Appunti
41 Accesso facilitato
42 Backup
43 Documento bitmap
44 Mappa caratteri
45 Puntatori Mouse
46 Analizzatore di rete
47 Connessione telefonica
48 Monitor di sistema
49 Libro della Guida
50 Mappamondo (impostazioni internazionali)
51 Compressione audio
52 Lettore CD
53 Lettore multimediale
54 Combinazione di suoni
55 Video clip
56 Compressione video
57 Controllo volume
58 Combinazione di suoni Musica
59 combinazione di suoni Jungle
60 Combinazione di suoni Robotz
61 Combinazione di suoni Utopia

Parent
La casella di riepilogo visualizzata nell'interfaccia dei componenti opzionali pu≥ contenere dei sottolivelli. Se il componente opzionale Φ secondario, la parola chiave Parent= definisce la sezione Install principale.

Needs
Se questo componente dipende da altri componenti, definisce le sezioni Install richieste da questo componente. Se il componente viene selezionato, all'utente verrα segnalato che il componente richiede i componenti descritti nelle sezioni Install elencate nella riga Needs=.

Le sezioni Install elencate nella riga Needs= devono essere le stesse del file inf. Se tuttavia nella riga Needs= sono elencati dei componenti dipendenti da altri file inf, questi ultimi devono essere specificati nella riga Include=.

Include
La voce Include consente di specificare i file inf che il programma di installazione deve caricare in memoria quando carica il file inf dell'utente, poichΘ questi file inf contengono delle sezioni che devono essere eseguite in aggiunta alle sezioni Install del file inf. La voce Needs specifica i nomi delle sezioni che si desidera eseguire nei file inf inclusi.

Il seguente esempio definisce due sezioni Install relative ai componenti aggiuntivi; ciascuna sezione Install utilizza le voci aggiuntive per specificare gli elementi di interfaccia e le dipendenze:

[Optional Components]
InstallMieiComponenti
InstallaGiochi

[InstallaMieiGiochi]
OptionDesc=%Toys_DESC%
Tip=%Toys_TIP%
IconIndex=35 ;Mini icona a forma di telefono per le finestre di dialogo
Parent=PostaApp
Needs=MSMAIL, MAPI, MicrosoftNetwork
Include=mos.inf, msmail.inf
CopyFiles=FileMieiGiochi
UpdateInis=CollegamentiMieiGiochi
AddReg=VociRegMieiGiochi

[InstallaAltreApp]
OptionDesc=%Other_DESC%
Tip=%Other_TIP%
IconIndex=4 ;Mini icona di Windows per le finestre di dialogo
CopyFiles=AltriFile
UpdateInis=AltriCollegamenti
AddReg=AltreVociReg

[Strings]
Toys_DESC="Utilitα Posta"
Toys_TIP="Utilitα aggiuntive per l'invio e l'organizzazione della posta"
Other_DESC="Altre utilitα utili"
Other_TIP="Calcolatrice, controllo del disco e controllo delle prestazioni"

Torna all'inizio del file