Windows - Az INF fájlok

A Windows INF fájlok feladata az alkalmazások telepítéséhez szükséges információk tárolása. Segítségükkel meghatározhatjuk, hogy melyik regisztrációs adatbázis bejegyzések módosulnak, jönnek létre, mely fájlok hova másolódnak, törlődnek, neveződnek át a merevlemezen, stb. Az alábbiakban áttekintést kívánunk nyújtani a fájl szerkezetéről és néhány tulajdonságáról.
Az INF fájlok formázott szekciókra bontott szöveges fájlok. Szerkezetük hasonlít az INI fájlokéhoz. A Windows Installer szolgáltatásban találhatók, a programtelepítésekkel kapcsolatos információkat tárolják. Először a Windows 95-ben találkozhattunk velük, majd a Windows NT 4.0-val került át a másik fejlesztési vonalba. Ezt követően az összes Windows operációs rendszer ismerte és kezelte őket. Előzetes fejlesztések a Windows NT 3.x sorozatban történtek, de ott még szkript alapú megoldások születtek, melyekkel később felhagyott a Microsoft.
Fájlon belül a különböző szekciók szögletes zárójellel ([]) kezdődnek. Minden szekciónak van neve, melyek az alábbi csoportokra oszthatók. Természetesen saját szekciókat is kialakíthatunk.
[Version]
Ez az egyetlen kötelező szekció, minden INF fájlban. Az itt tárolt információ alapján tudja a Windows Installer szolgáltatás eldönteni, hogy az INF fájl Windows 95/98 vagy NT/2000 formátumú-e.
Signature="$WINDOWS NT$"
Signature="$CHICAGO$"
[Install]
Általános információkat tartalmaz a telepítés folyamatával kapcsolatban, például:
Copyfiles=DataFiles, ProgramFiles
Delfiles=OldFiles
UpdateInis=NewIniInfo
AddReg=NewRegistryInfo, MoreNewRegistryInfo
DelReg=OldRegistryInfo, MoreOldRegistryInfo
A "Copyfiles" bejegyzés pontos meghatározása a [Copy Files] szekció feladata (lásd lent), stb.
[Add Registry]
A regisztrációs adatbázishoz hozzáfűzendő kulcsok és bejegyzések leírása, például:
AddReg=mydevice.reg
Utasítjuk a rendszert, hogy fűzze hozzá a regisztrációs adatbázishoz a "mydevice.reg" fájl tartalmát.
[Copy Files]
Forrás fájlneveket tartalmaz, melyeket a telepítő a merevlemezre másol.
[Delete Registry]
Az itt felsorolt registry bejegyzések törlésre kerülnek. Főleg alkalmazások eltávolításánál használatos.
[Delete Files]
Az itt felsorolt fájlok törlésre kerülnek.
[INI File to Registry]
Megadott INI fájlok, megadott bejegyzései átkerülnek a telepítés során a regisztrációs adatbázisba.
[ProfileItems]
Windows 2000-től használható és a Start menühöz hozzáadandó elemeket tartalmazza.
[Rename Files]
A felsorolt fájlok átnevezésre kerülnek (a forrás és cél fájlnevet is fel kell sorolni).
[Update INI Fields]
INI fájlok mezőinek törlésére, hozzáadására, áthelyezésére szolgál.
[Update INI File]
INI fájlok bejegyzéseinek törlésére, hozzáadására, áthelyezésére szolgál.
[Services]
Szolgáltatásokkal kapcsolatos feladatokat tárol.
[Service Install]
A felsorolt szolgáltatások kerülnek telepítésre.
[DestinationDirs]
A fájlműveletek (másolás, mozgatás, törlés) alapértelmezett célkönyvtárát tárolja. Ha egy műveletnél nincs meghatározva a célkönyvtár, akkor az itt lévő beállítás érvényes.
[SourceDiskFiles]
A telepítés forrás állományai.
[SourceDiskNames]
A telepítés forrás meghajtói.
[EventLog Install]
Eseményüzenetek a regisztrációs adatbázis számára.
[Strings]
% jelek között behelyettesíthető környezeti változókat tárol. Nézzünk meg példának egy saját szekciót és a sztring értékek felhasználását:
[Manufacturer]
%NECMfg%=NEC
%TIOHCIMfg%=TIOHCI
%NSCMfg%=NSC
%SONYMfg%=SONY
%GENERICMfg%=GENERIC
%VIAMfg%=VIA
%FUJITSUMfg%=FUJITSU
Minden INF fájl tartalmazhat privát szekciókat. A bennük található adatok kezelése a telepítő program feladata, ezért minden esetben figyelembe kell vennünk, hogy az adott telepítő milyen bejegyzéseket tud kezelni.
A %systemroot%\inf mappában számos INF fájl található, melyeket akár tanulási céllal is használhatunk, módosításuktól azonban óvakodjunk.