Struktura plików INF
\Polskie Fonty \Wracaj na
początek \Pliki INF c.d.
Struktura plików INF
Pakiet instalacyjny Windows 9x zawiera 238 plików
INF. Pliki tego typu przechowywane są w folderze WINDOWS\INF.
Większość z nich to pliki informacji o urządzeniach
i elementach sieci. Zawierają one wszelkie informacje niezbędne
do zainstalowania sterowników urządzenia lub sieci i stworzenia
dlań konfiguracji -- łącznie z informacjami wyświetlanymi na
ekranie użytkownikowi. Od każdego producenta urządzenia, dla którego
Windows 9x nie posiada pliku INF i sterownika, oczekuje się
dostarczenia dyskietki ze sterownikami i odpowiednim plikiem
INF.
Pojedyncze pliki, jak LAYOUT.INF czy APPS.INF, są
związane wyłącznie z oprogramowaniem i ich struktura mniej
lub bardziej przypomina pliki opisujące urządzenia. Mogą zawierać
dodatkowe sekcje. Zasadniczo są one podporządkowane tym samym
regułom. Struktura Device Information Files, jak są one
w dokumentacji Windows 9x nazywane, jest na tyle elastyczna, że
z powodzeniem mogą być wykorzystywane do instalacji samego
oprogramowania. Kliknięcie przycisku Z dysku zarówno
w oknie kreatora instalacji nowego sprzętu, jak
i Instalatora Windows 9x spowoduje poszukiwanie pliku INF. Od
pliku INF rozpoczyna się instalacja m. in. Edytora założeń
systemowych.
Format plików INF jest podobny do znanych z Windows 3.x
plików INI:
Plik podzielony jest na sekcje o różnych nazwach.
Poszczególne sekcje oddzielają nagłówki o postaci: [nazwa_sekcji]
Każda sekcja zawiera wpisy: opcja=parametry
Opcje mogą zawierać po kilka parametrów
oddzielonych przecinkami. Nazwy opcji występujących w jednej
sekcji mogą się powtarzać -- często są to swoiste polecenia. Ich
kolejność jest znacząca.
Komentarze oddzielone są średnikiem (;).
Kursywą będziemy oznaczać tutaj
teksty, które w konkretnym pliku INF ulegają wymianie.
Opisana poniżej sekcja [Manufacturer] pojawi się
w pliku jako [Manufacturer], ale [Manufacturer Name] jako na
przykład [Microsoft].
Ilość sekcji w pliku nie jest określona.
Również ich nazwy mogą być bardzo różne. Sekcje powtarzające się to:
[Version] -- nagłówek identyfikujący plik INF, klasę
urządzenia i plik zawierający dane o dyskietkach
instalacyjnych,
[Manufacturer] -- lista producentów urządzeń
i odwołań do właściwych im sekcji,
[Manufacturer Name] -- lista urządzeń jednego
producenta i odwołań do związanych z poszczególnymi
urządzeniami sekcji; dla każdego urządzenia jest również podany
identyfikator i, ewentualnie, identyfikatory urządzeń
kompatybilnych,
[Install] -- lista sekcji opisujących instalację
jednego urządzenia plus informacja o tym, czy po zakończeniu
instalacji komputer ma zostać zrestartowany,
sekcje opisujące instalację -- są one wskazane
w sekcji [Install], na
kolejnych stronach są opisane bardziej szczegółowo,
[ClassInstall] -- lista sekcji opisujących instalację
klasy urządzeń,
[Strings] -- teksty wyświetlane na ekranie
i rozwinięcia swoistych zmiennych %nazwa% występujących we
wcześniejszych sekcjach.
Choć pliki INF służą nie tylko
instalowaniu urządzeń, to jest to ich główna rola.
W niniejszym opisie -- dla uproszczenia -- mówi się
o urządzeniach, choć struktura plików INF instalujacych
oprogramowanie jest oparta na tych samych zasadach.
Jak wskazuje powyższe wyliczenie, w sekcji
[Manufacturer] znajdziemy listę
producentów, w odpowiednich [Manufacturer Name] -- listy urządzeń, a sekcje
[Install] są specyficzne dla
poszczególnych z nich. Właściwe dane i polecenia znajdują
się jednak w zupełnie innych sekcjach wskazanych przez klucze
w [Install]. Co więcej,
zarówno listy producentów, jak i listy urządzeń operują
zazwyczaj zmiennymi mającymi swoje rozwinięcie w sekcji [Strings].
Odbicie plików INF umieszczonych w folderze
WINDOWS\INF znajdziemy w kreatorze instalacji nowego sprzętu.
Wyświetla on najpierw listę wszystkich opisanych w plikach INF
klas urządzeń (dla każdej jest jeden lub kilka plików), a dla każdej
klasy -- producentów wymienionych w sekcjach [Manufacturer] (lewa strona okna):
Dla wybranego producenta wyświetlana jest lista
urządzeń z sekcji [Manufacturer
Name].
Wszystkie wyświetlane na ekranie nazwy pochodzą
z sekcji [Strings], gdzie
rozwinięte są stosowane wewnątrz pozostałych sekcji zmienne.
Przykładem może być zmienna %Panasonic%:
Panasonic="MKEPanasonic [Matsushita-Kotobuki Electronics
Industries Ltd.]"
Sekcja [Version][Version]
Signature="$Chicago$"
Class=nazwa_klasy
Provider=twórca_pliku_INF
LayoutFile=plik_układu.inf
Class -- informuje o klasie, której dotyczy plik.
Dla kontrolerów CD-ROM będzie to Adapter, dla kart graficznych -- Display, dla usług sieciowych -- NetService itd.
Provider -- w plikach INF Windows 9x w tym
wierszu znajdziemy odwołanie do zmiennej, której rozwinięcie
w sekcji [Strings] brzmi
Microsoft. Inni producenci będą
umieszczać tu nazwę swojej firmy -- pośrednio (jak Microsoft) lub
bezpośrednio (nie korzystając ze zmiennej).
LayoutFile -- wskazuje plik INF zawierający sekcje
[SourceDiskNames] i [SourceDiskFiles]. Jeżeli nie jest
podany, te sekcje powinny znaleźć się w tym samym pliku.
Plikiem układu plików instalacyjnych dla Windows 9x jest
LAYOUT.INF.
Oto przykładowa sekcja z pliku ADAPTER.INF
(kontrolery CD-ROM): [Version]
signature="$CHICAGO$"
Class=Adapter
Provider=%Msft%
LayoutFile=LAYOUT.INF
Sekcja [Manufacturer][Manufacturer]
producent=sekcja_Manufacturer_Name
Swoisty spis treści pliku INF. Zawiera listę
producentów i przyporządkowanych im sekcji-list urządzeń.
producent zazwyczaj podany
jest w postaci zmiennej.
W pliku ADAPTER.INF sekcja ta wygląda następująco: [Manufacturer]
%Sony%=Sony
%Panasonic%=Panasonic
%Mitsumi%=Mitsumi
Rozwinięte zmienne z lewej strony znaku
równości posłużą wyświetleniu na ekranie listy producentów, nazwy
sekcji po prawej wskazują listy urządzeń, czyli sekcje [Manufacturer Name].
Sekcja [Manufacturer_Name] [Manufacturer_Name]
urządzenie=sekcja_Install, ID_urządzenia
[, ID_urządzenia_kompatybilnego]...
Spis urządzeń jednego producenta. Podobnie jak
w sekcji [Manufacturer], tu
również przed znakiem równości znajdziemy zazwyczaj zmienną. Po
znaku równości znajdziemy trzy lub więcej wartości:
sekcja_Install -- nazwa sekcji [Install] dotyczącej danego
urządzenia,
ID_urządzenia -- identyfikator urządzenia,
ID_urządzenia_kompatybilnego -- identyfikatory
urządzeń kompatybilnych.
Menedżer konfiguracji proponuje użycie sterowników
urządzenia kompatybilnego, gdy sterowniki dla urządzenia
instalowanego nie są dostępne.
Pierwsza z trzech sekcji [Manufacturer Name] pliku
ADAPTER.INF zawiera tylko jeden wpis: [Sony]
%*pnpA02B.DeviceDesc%=SonyP,*pnpA02B
Wskazuje ona, że sekcją [Install] kontrolera CD-ROM firmy
Sony jest [SonyP].
Sekcja [Install][Install]
LogConfig=sekcja_Logical_Configuration
[, sekcja_Logical_Configuration]...
UpdateCfgSys=sekcja_Update_Config
UpdateAutoBat=sekcja_Update_AutoExec
UpdateInis=sekcja_Update_INI [, sekcja_Update_INI]...
UpdateIniFields=sekcja_Update_IniFields
[, sekcja_Update_IniFields]...
AddReg=sekcja_Add_Registry [, sekcja_Add_Registry]...
DelReg=sekcja_Delete_Registry
[, sekcja_Delete_Registry]...
Ini2Reg=sekcja_Ini_to_Registry
[, sekcja_Ini_to_Registry]...
Copyfiles=sekcja_File-List [, sekcja_File-List]...
Renfiles=sekcja_File-List [, sekcja_File-List]...
Delfiles=sekcja_File-List [, sekcja_File-List]...
Reboot | Restart
Jak już wspomniano, nazwa sekcji [Install] każdego urządzenia musi
zostać podana w sekcji producenta.
LogConfig -- lista sekcji opisujących dopuszczalne
konfiguracje urządzenia,
UpdateCfgSys -- nazwa sekcji opisującej zmiany
w pliku CONFIG.SYS,
UpdateAutoBat -- nazwa sekcji opisującej zmiany
w pliku AUTOEXEC.BAT,
UpdateInis -- lista sekcji opisujących zmiany całych
wpisów w plikach INI,
UpdateIniFields -- lista sekcji opisujących częściowe
zmiany wpisów w plikach INI,
AddReg -- lista sekcji zawierających uzupełnienia
Rejestru,
DelReg -- lista sekcji zawierających klucze
i wartości, które mają być usunięte z Rejestru,
Ini2Reg -- lista sekcji wskazujących, jakie sekcje
i wartości z plików INI mają zostać przeniesione do
Rejestru,
Copyfiles -- lista sekcji zawierających nazwy plików do
skopiowania lub wprost, nazwy plików poprzedzone znakiem @ (folder docelowy określa DefaultDestDir w [DestinationDirs], a położenie
pliku źródłowego sekcje [SourceDisksFiles] i [SourceDisksNames])
Renfiles -- lista sekcji opisujących zmiany nazw
plików,
Delfiles -- lista sekcji zawierających nazwy plików do
usunięcia,
Reboot lub Restart --
powoduje, że po zakończeniu instalacji będzie wykonany restart
komputera lub samego środowiska graficznego.
W sekcji umieszczane są tylko te klucze, które są
do zainstalownia obsługi urządzenia wymagane. Większość wpisów to
nazwy sekcji opisujących poszczególne czynności instalacyjne
w szczegółach. Zadaniem sekcji [Install] jest jedynie ich
wskazanie (wraz z określeniem przeznaczenia). Specyficzne
znaczenie mają wpisy LogConfig,
Reboot i Restart. Na pewne uproszczenia pozwala
równieżCopyFiles -- w tym
wpisie można łączyć nazwy pojedynczych plików do skopiowania
z nazwami sekcji.
Na kolejnych stronach opisane są wymienione
tutaj sekcje i ich znaczenie.
Przykładem sekcji [Install] może być wspomniana
wcześniej [SonyP]: [SonyP]
LogConfig=SLCD.MVPAS,SLCD.PIO,SLCD.IRQ,SLCD.DMA,SLCD.Full,SLCD.ECHO
CopyFiles=@SLCD32.mpd
AddReg=IOS,CanPoll,SonyRegLines
Wskazanych jest 6 sekcji opisujących konfiguracje
kontrolera i trzy sekcje opisujące uzupełnienia Rejestru. Plik
SLCD32.MPD zostanie odnaleziony wg wskazówek w pliku
LAYOUT.INF. Jego folder docelowy -- według DestinationDirs -- to IOSUBSYS (liczba 12
zawsze oznacza ten folder).
Sekcja [Logical_Configuration][Logical_Configuration]
ConfigPriority=rodzaj_konfiguracji
MemConfig=lista_zakresów_pamięci
I/OConfig=lista_zakresów_I/O
IRQConfig=lista_IRQ
DMAConfig=lista_DMA
Sekcje tego typu, wskazywane w [Install], opisują możliwości
konfiguracyjne urządzenia. Poszczególne wpisy opisują zakresy
pamięci, adresy we/wy, przerwania i kanały DMA.
Każda sekcja [Logical_Configuration] odpowiada
jednej z konfiguracji proponowanych na karcie Zasoby
arkusza właściwości urządzenia. Lista wartości dotycząca jednego
zasobu wewnątrz tej samej konfiguracji odpowiada możliwościom jego
modyfikacji -- wartości z tej listy będą proponowane po
kliknięciu na karcie Zasoby przycisku Zmień ustawienie
(jeżeli nie będziemy wpisywać ich ręcznie). Jeżeli jeden z zasobów
zostanie wymieniony dwukrotnie, oznacza to, że urządzenie potrzebuje
dwóch przerwań czy kanałów DMA.
Wpisy ConfigPriority=HARDWIRED i ConfigPriority=HARDRECONFIG będą
powodowały przypomnienie użytkownikowi o konieczności zmiany
konfiguracji urządzenia poza Windows 9x (oznacza to przełożenie
zworek).
Jedną z konfiguracji wskaznych w [SonyP] z pliku ADAPTER.INF
przedstawiamy poniżej: [SLCD.MVPAS]
ConfigPriority=HARDRECONFIG
IRQConfig=2,3,4,5,6,7,10,11,12,14,15
IOConfig=4@1e80-1e8f%fffc(ffff::), 4@1f84-1f8f%fffc(ffff::)
O kolejnych sekcjach czytaj na następnej
stronie
R E K L A M A :
[ Dalej o plikach
INF ]
(c) Windows.Online.Pl oraz http://www.fonty.pl/ 97-2004. Wszelkie
prawa zastrzeżone.
Wyszukiwarka
Podobne podstrony:
Struktura plików INF cz II14 Linux cz 1 czym jest Linux, struktura plikówid462Nauka Kompresowanie plikówinf rak mutgStan cywilny, wyk struktura ludnosci wg 5 strElementy struktury organizacyjnej i zarządzanie projektowaniem organizacjiinf kolo1Cięcie pliku ac3, Ekspresowe cięcie pliku ac3, Łączenie plików audioElementy składowe i struktura robotów cz 1plan2010 12 struktura pmsElementy składowe i struktura robotów cz 2Linux System Plikówinf stos) 4Klasyfikacja struktur organizacyjnychwięcej podobnych podstron