Программы и файлы Windows - А. Климов
Шрифт:
Интервал:
Закладка:
Описание:
SR CLIENT DLL
Файл srclient.dll является клиентской DLL для программы восстановления системы rstrui.exe и используется при написании скриптов
Svcpack.log
Местонахождение: Windows
Описание:
Файл Svcpack.log является протоколом хода установки сервис-пака. Исследуя лог установки, вы можете найти причины неудачной установки. Например, если вы увидите такие записи: "There is not enough space on the disk. Service Pack 2 installation did not complete", то станет ясно, что программе установки не хватает места на жестком диске. Попробуйте освободить диск от лишних файлов и повторите попытку.
SysEvent.Evt
Местонахождение: WINDOWSsystem32config
Файл SysEvent.Evt является журналом событий системы, используемого реестром Windows
system
Местонахождение: WINDOWSsystem32config
Файл system (обратите внимание, что файл без расширения) содержит раздел реестра HKLMSystem
UsrClass.dat
Местонахождение
C:Documents and SettingsИмяПользователяLocal SettingsApplication DataMicrosoftWindows
Файл UsrClass.dat является кустом реестра Windows HKEY_USERS/SID_Classes
WindowsUpdate.log
Местонахождение: Windows
Файл, содержащий историю автоматического обновления.
wpa.dbl
Местонахождение: Windowssystem32
Описание:
Как известно, лицензионная Windows XP при переустановке системы требует повторной активации. Чтобы этого избежать, достаточно перед переустановкой системы скопировать файл wpa.dbl, расположенный в папке windowsSystem32, например, на дискету - именно в этом файле хранится код активации. После переустановки системы, естественно, нужно будет заменить файл wpa.dbl на тот, что записали на дискету.
РАСШИРЕНИЯ ФАЙЛОВ
DBX-файлы
В файлах с расширением DBX хранятся записи программы Outlook Express. В этих файлах, называемых Банком сообщений, находятся письма, сообщения новостных групп и т.п. При желании, можно скопировать эти файлы на носитель информации для переноса данных в другой компьютер.
INF-файлы
В данной статье мы рассмотрим, что представляет собой INF-файл, как с его помощью работать с другими файлами и реестром, создавать ярлыки, запускать программы и т.д.
Как известно, для более-менее серьезного программного продукта обычно требуется специальная программа инсталляции, с помощью которой пользователь сможет легко установить и так же легко удалить сам продукт. Существует много инструментальных средств, позволяющих быстро создавать инсталляционные пакеты. Однако, большинство из них добавляют к исходному размеру программы 200–500 Кб. А ведь это далеко не всегда радует. Серьезный продукт не обязательно должен быть внушительных размеров. И если вы хотите сделать инсталляцию доступной в Сети, то эти 200–500 Кб могут сильно сказаться на популярности продукта.
Как выйти из подобной ситуации? Здесь на помощь придут inf-файлы. Именно с помощью inf-файлов можно удалять, копировать другие файлы, добавлять информацию в реестр, в ini-файлы, создавать ярлыки, в общем, все то же, что обеспечивают громоздкие программы установки.
Перейдем к изучению спецификации inf-файлов.
inf-файл представляет собой текстовый файл, который, содержит условия установки программного обеспечения.
Чтобы запустить inf-файл, нужно щелкнуть по нему правой кнопкой мыши и выбрать в открывшемся контекстном меню параметр Установить (Install). Но для подготовки дистрибутива можно воспользоваться IExpress, который поддерживает запуск .inf-файлов. Вооружившись этой программой, а также знанием спецификации .inf-файлов, можно создавать профессиональные инсталляционные пакеты.
Основную информацию в .inf-файле содержат секции, представленные в Таблице 1 (более сложные .inf-файлы могут иметь дополнительные секции).
Секция [Version] обязательно должна включать строку Signature="$Chicago$"
Эта секция определяет стандартный заголовок для всех inf-файлов Microsoft Windows. Если сигнатура будет не $Chicago$, операционная система Windows не примет inf-файл как принадлежащий любому из классов устройств, признанных Windows.
При написании сигнатуры вы можете использовать как верхний, так и нижний регистры букв — $Chicago$ или $CHICAGO$.
Секция установки [DefaultInstall] может содержать следующие параметры:
CopyFiles — копирование файлов;
RenFiles — переименование файлов;
DelFiles — удаление файлов;
UpdateInis — изменение данных в ini-файлах;
UpdateIniFields — изменение областей в .ini-файлах;
AddReg — добавление информации в реестр;
DelReg — удаление информации из реестра;
Ini2Reg — перемещение строки или секции в ini-файлах;
UpdateCfgSys — изменение файла Config.sys;
UpdateAutoBat — изменение файла Autoexec.bat.
Этим параметрам в качестве значения присваивается имя секции с файлами. Например:
[DefaultInstall]
CopyFiles=CopyHtml
[CopyHtml]
Example.html ;файл для копирования...
[DestinationDirs] ;Секция расположения каталогов
DestExampleFiles=10 ;Каталог назначения (т.е. копировать в папку Windows)
Чуть ниже представлены цифровые обозначения специальных папок, применяемые в .inf-файлах:
10 — C:WINDOWS;
11 — C:WINDOWSSystem;
12 — C:WINDOWSSYSTEMIOSUBSYS;
13 — C:WINDOWSCOMMAND;
17 — C:WINDOWSInf;
18 — C:WINDOWSHlp;
20 — C:WINDOWSFONTS;
21 — C:WINDOWSSYSTEMVIEWERS;
22 — C:WINDOWSSYSTEMVMM32;
23 — C:WINDOWSSYSTEMCOLOR;
30 — Корневой загрузочный диск (обычно C:).
Например, если нужно скопировать файл в папку Web, которая находится в каталоге Windows, сделайте это так:
[DestinationDirs]
DestExampleFiles=10,WEB
Так же можно поступить и с другими папками, находящимися в определенных каталогах.
Параметр CopyFiles содержит имя секции, где находятся имена файлов для копирования с исходного диска в папку назначения. Папка назначения определяется в секции [DestinationDirs] inf-файла. В следующем примере копируются два файла:
[Version]
Signature=$Chicago$
[DefaultInstall]
Copyfiles=ExampleCopyFiles ;секция может быть названа как угодно
[SourceDisksNames]
1="Имя диска","",1
;Перечисляете файлы, которые содержатся на диске
[SourceDisksFiles]Example.exe=1
Example.vxd=1
;Перечисляете файлы для копирования (о цифрах через три запятые читайте ниже)
[ExampleCopyFiles]
Example.exe,,,1
Example.vxd,,,1
;Указываете папку, в которую будут копироваться файлы (10 — Windows)
[DestinationDirs]
ExampleCopyFiles=10
Цифры через три запятые обозначают дополнительные флаги при копировании файлов и могут принимать значения, представленные в
Параметр CopyFiles может копировать файл непосредственно из строки. Для этого перед именем файла нужно поставить символ @. В следующем примере копируются два текстовых файла:
[email protected], @anotherfile.txt
Параметр RenFiles содержит секции, которые в свою очередь содержат имена файлов для переименования. Папка, где будет происходить переименование, должна быть определена в секции [DestinationDirs] inf-файла. В следующий примере происходит переименование двух файлов из .bmp в .txt:
[Version]
Signature=$Chicago$
[DefaultInstall]
RenFiles=ExampleRenameOldFiles
[SourceDisksNames]
1="Имя диска","",1
;Перечисляете старые имена файлов
[SourceDisksFiles]
Example1.bmp=1
Example2.bmp=1
;Определяете файлы, которые будут переименовываться
[ExampleRenameOldFiles]
Example1.txt, Example1.bmp
Example2.txt, Example2.bmp
;Указываете папку, в которой будут переименовываться файлы (10 — Windows)
[DestinationDirs]
ExampleRenameOldFiles=10
В параметре AddReg указываются секции, которые содержат информацию о добавлении или изменении ключей, значений в реестре. Следующий пример регистрирует вашу копию операционной системы Windows.
[Version]
Signature=$Chicago$
[DefaultInstall]
AddReg=ExampleAddRegistry
;Определяете информацию, которая будет добавлена в реестр
[ExampleAddRegistry]
HKLM, "SOFTWAREMicrosoftWindowsCurrentVersion", "RegDone",,"1"
HKLM, "SOFTWAREMicrosoftWindowsCurrentVersion WelcomeRegWiz","@",,"1"
С помощью этого файла в реестр добавляется следующая информация:
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersion
"RegDone"="1"
HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionWelcomeRegWiz
"@"="1"
Обратите внимание на запятые в inf-файле. Если нужно добавить в реестр параметр по умолчанию, запятые должны быть проставлены иначе. Например, в рассмотренном нами ключе реестра HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersion сделаем параметр по умолчанию равным единице (1):
HKLM, "SOFTWAREMicrosoftWindowsCurrentVersion",,,"1"
Ниже представлены корневые имена реестра, применяемые в inf-файлах.