Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ «НСдокумСнтированныС ΠΈ малоизвСстныС возмоТности Windows XPΒ». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 83

Автор Π ΠΎΠΌΠ°Π½ КлимСнко

НС Π·Π°Π±Ρ‹Π²Π°ΠΉΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ INF-Ρ„Π°ΠΉΠ» Π½Π΅ выполнится послС Π²Ρ‹Π±ΠΎΡ€Π° ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π£ΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ контСкстного мСню INF-Ρ„Π°ΠΉΠ»Π°. Для Π΅Π³ΠΎ установки придСтся Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ RunDll32 advpack.dll, LaunchINFSection d:\1.INF, DefaultInstall. Π—Π΄Π΅ΡΡŒ d:\1.INF соотвСтствуСт ΠΏΡƒΡ‚ΠΈ ΠΊ INF-Ρ„Π°ΠΉΠ»Ρƒ ΠΈ Π΅Π³ΠΎ названию. 

Π’Ρ‹Π²ΠΎΠ΄ сообщСния ΠΏΠ΅Ρ€Π΅Π΄ установкой

ΠŸΠ΅Ρ€Π΅Π΄ установкой INF-Ρ„Π°ΠΉΠ»Π° ΠΈΠ»ΠΈ послС Π½Π΅Π΅ ΠΌΠΎΠΆΠ½ΠΎ вывСсти ΠΎΠΊΠ½ΠΎ сообщСния с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ тСкстом. Π”ΠΈΠ°Π»ΠΎΠ³ сообщСния, Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ ΠΏΠ΅Ρ€Π΅Π΄ установкой, позволяСт эту установку ΠΎΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ. Он содСрТит Π΄Π²Π΅ ΠΊΠ½ΠΎΠΏΠΊΠΈ β€” OK ΠΈ ΠžΡ‚ΠΌΠ΅Π½Π°. Если Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ ΠžΡ‚ΠΌΠ΅Π½Π°, Ρ‚ΠΎ установка INF-Ρ„Π°ΠΉΠ»Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΌΠ΅Π½Π΅Π½Π°. Π”ΠΈΠ°Π»ΠΎΠ³ сообщСния, Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΡ‹ΠΉ послС установки, являСтся ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹ΠΌ ΠΈ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½Ρƒ ΠΊΠ½ΠΎΠΏΠΊΡƒ β€” OK.

Π§Ρ‚ΠΎΠ±Ρ‹ вывСсти Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ²ΠΎΠ΅ ΠΎΠΊΠ½ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ установкой, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом BeginPrompt (ΠΎΠΊΠ½ΠΎ сообщСния Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²Π΅Π΄Π΅Π½ΠΎ Π΄ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, описанных ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом RunPreSetupCommands), Π° Ρ‡Ρ‚ΠΎΠ±Ρ‹ вывСсти ΠΎΠΊΠ½ΠΎ сообщСния послС установки, Π½ΡƒΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹ΠΌ словом EndPrompt. Π’ листингС 15.11 ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½ простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования ΠΊΠ°ΠΊ ΠΎΠΊΠ½Π° сообщСния, Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ установкой, Ρ‚Π°ΠΊ ΠΈ ΠΎΠΊΠ½Π° сообщСния, Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ послС установки.

Листинг 15.11. Π’Ρ‹Π²ΠΎΠ΄ ΠΎΠΊΠ½Π° с ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½Ρ‹ΠΌ тСкстом

[version]

Signature = $CHICAGO$

AdvancedINF=2.5,"Π­Ρ‚Π° строка Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ, Ссли Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ advpack.dll"


[DefaultInstall]

RunPreSetupCommands = RunPre

BeginPrompt=BeginText

EndPrompt=EndText


[RunPre]

cmd.exe


[BeginText]

Prompt="Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ тСкста, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ вывСдСтся ΠΏΠ΅Ρ€Π΅Π΄ установкой"

Title="Π­Ρ‚ΠΎ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ для сообщСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ вывСдСтся ΠΏΠ΅Ρ€Π΅Π΄ установкой"


[EndText]

Prompt="Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ тСкста, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ вывСдСтся послС установки"

Π‘Π»ΠΎΠΊ для описания сообщСния, Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ установкой INF-Ρ„Π°ΠΉΠ»Π° (Π² Π΄Π°Π½Π½ΠΎΠΌ случаС BeginText) содСрТит ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ слова.

β–  Prompt β€” опрСдСляСт саму строку Π²Ρ‹Π²ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ сообщСния.

β–  Title β€” ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ ΠΎΠΊΠ½Π° сообщСния. Π‘Π»Π΅Π΄ΡƒΠ΅Ρ‚ ΡƒΡ‡ΠΈΡ‚Ρ‹Π²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для ΠΎΠΊΠ½Π° сообщСния, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ ΠΏΠ΅Ρ€Π΅Π΄ установкой, Π½ΠΎ ΠΈ для ΠΎΠΊΠ½Π° сообщСния, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ послС установки. 

Π”ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ возмоТности

Π’Ρ‹ΡˆΠ΅ Π±Ρ‹Π»ΠΈ рассмотрСны лишь основы Ρ€Π°Π±ΠΎΡ‚Ρ‹ с INF-Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ. ΠšΡ€ΠΎΠΌΠ΅ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½Ρ‹Ρ… ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… слов, INF-Ρ„Π°ΠΉΠ»Ρ‹ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‚ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅, Π½ΠΎ Ссли Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΈΡ… ΠΎΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ, Ρ‚ΠΎ понадобится ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Π°Ρ ΠΊΠ½ΠΈΠ³Π°. Π—Π°ΠΊΠΎΠ½Ρ‡ΠΈΠΌ Π½Π° этом рассказ ΠΎ ΠΊΠ»ΡŽΡ‡Π΅Π²Ρ‹Ρ… словах INF-Ρ„Π°ΠΉΠ»ΠΎΠ². Π’Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим нСсколько ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² Π½Π΅ совсСм стандартного использования INF-Ρ„Π°ΠΉΠ»ΠΎΠ². Π‘Π΅Π· описания этих ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠ² рассказ ΠΎ возмоТностях INF-Ρ„Π°ΠΉΠ»ΠΎΠ² Π±Ρ‹Π» Π±Ρ‹ Π½Π΅ ΠΏΠΎΠ»ΠΎΠ½.

Π Π°Π±ΠΎΡ‚Π° с Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠΌ Установка ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ

Одной ΠΈΠ· интСрСсных возмоТностСй INF-Ρ„Π°ΠΉΠ»ΠΎΠ² являСтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΈΡ… использования ΠΊΠ°ΠΊ для добавлСния ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² Π΄ΠΈΠ°Π»ΠΎΠ³ Установка ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Ρ‚Π°ΠΊ ΠΈ для выполнСния процСсса дСинсталляции ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ Π΄ΠΈΠ°Π»ΠΎΠ³Π° Установка ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. Рассмотрим простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€ использования INF-Ρ„Π°ΠΉΠ»ΠΎΠ² для создания Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ Π·Π°Ρ†ΠΈΠΊΠ»Π΅Π½Π½ΠΎΠ³ΠΎ элСмСнта Π΄ΠΈΠ°Π»ΠΎΠ³Π° Установка ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ примСняСтся для Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ возмоТности автоматичСского запуска дисков. ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ Π½ΠΈΠΆΠ΅ сцСнария прост. ΠŸΡ€ΠΈ ΠΏΠ΅Ρ€Π²ΠΎΠΌ своСм Π²Ρ‹Π·ΠΎΠ²Π΅ ΠΎΠ½ ΠΊΠΎΠΏΠΈΡ€ΡƒΠ΅Ρ‚ сСбя Π² ΠΏΠ°ΠΏΠΊΡƒ %systemroot%\INF, ΠΎΡ‚ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ автоматичСский запуск дисков, Π° Ρ‚Π°ΠΊΠΆΠ΅ добавляСт Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ автоматичСского запуска дисков Π² Π΄ΠΈΠ°Π»ΠΎΠ³ Установка ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. ПослС удалСния Π΄Π°Π½Π½ΠΎΠ³ΠΎ INF-Ρ„Π°ΠΉΠ»Π° с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΄ΠΈΠ°Π»ΠΎΠ³Π° Установка ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ происходит Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ автоматичСского запуска дисков, Π° Ρ‚Π°ΠΊΠΆΠ΅ созданиС Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅ Установка ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ Π½ΠΎΠ²ΠΎΠΉ строки, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠΏΡΡ‚ΡŒ ΠΎΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ автоматичСский запуск диска. Π”Ρ€ΡƒΠ³ΠΈΠΌΠΈ словами, создаСтся постоянный Ρ†ΠΈΠΊΠ». ΠšΠΎΠ½Π΅Ρ‡Π½ΠΎ, ΠΏΡ€ΠΈΠΌΠ΅Ρ€ с ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ΠΌ значСния ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° довольно спорСн, вСдь Π½Π°ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΡ‰Π΅ Π±Ρ‹Π»ΠΎ Π±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ свой Ρ„Π»Π°ΠΆΠΎΠΊ Π² ΠΎΠ΄ΠΈΠ½ ΠΈΠ· стандартных Π΄ΠΈΠ°Π»ΠΎΠ³ΠΎΠ² Windows, ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² свои списки Π½ΠΎΠ²Ρ‹Ρ… элСмСнтов. Но Ссли Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΈ установкС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° Ρ‚Π°ΠΊΠΆΠ΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ ΠΈΠ»ΠΈ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ сразу нСсколько ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ нСсколько разновидностСй настройки ΠΎΠ±ΠΎΠ»ΠΎΡ‡ΠΊΠΈ Windows, Π° ΠΏΠΎΡ‚ΠΎΠΌ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΌΠ΅ΠΆΠ΄Ρƒ Π½ΠΈΠΌΠΈ), Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ способ использования INF-Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌ (рис. 15.1).

Рис. 15.1. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅ Установка ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ


Листинг 15.12. Π‘ΠΎΠ·Π΄Π°Π½ΠΈΠ΅ Ρ†ΠΈΠΊΠ»Π° Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅ Установка ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ

[version]

Signature = $CHICAGO$


[DefaultInstall]

AddReg = AutoRunOff, InstallInf

CopyFiles = INFcopy

;НиТС ΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ %PATH% для указания измСняСмой Π²Π΅Ρ‚Π²ΠΈ рССстра.

;ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ – это ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ символов, которая ΠΏΡ€ΠΈ 

;установкС INF-Ρ„Π°ΠΉΠ»Π° Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒΡΡ Π² строку, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΡƒΡŽ для Π½Π΅Π΅

;Π² стандартном Π±Π»ΠΎΠΊΠ΅ [Strings] (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ этот Π±Π»ΠΎΠΊ располагаСтся Π² самом Π½ΠΈΠ·Ρƒ

;INF-Ρ„Π°ΠΉΠ»Π°). ИспользованиС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… позволяСт ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ

;INF-Ρ„Π°ΠΉΠ»ΠΎΠ² большого Ρ€Π°Π·ΠΌΠ΅Ρ€Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ прСдоставляСт Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΡƒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ

;Ρ†Π΅Ρ‚Ρ€Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ хранСния всСх ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… ΠΈ Π΄Ρ€ΡƒΠ³ΠΈΡ… строчСк ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

;Π˜Π½Ρ‹ΠΌΠΈ словами, вмСсто Ρ‚ΠΎΠ³ΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΈΡΠΊΠ°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ для измСнСния строку

;ΠΏΠΎ всСму содСрТимому INF-Ρ„Π°ΠΉΠ»Π°, ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠΏΠΈΡΠ°Ρ‚ΡŒ Π΅Π΅ Π² Π±Π»ΠΎΠΊΠ΅ [Strings]

[AutoRunOff]

HKLM, %PATH%, AutoRun, 0x00010001, 0


;ДобавляСм строку Π² Π΄ΠΈΠ°Π»ΠΎΠ³ Установка\ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. Π’ ΠΏΠ΅Ρ€Π²ΠΎΠΉ Π³Π»Π°Π²Π΅

;ΠΌΡ‹ ΠΊΡ€Π°Ρ‚ΠΊΠΎ рассматривали Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ этого Π΄ΠΈΠ°Π»ΠΎΠ³Π°.

[InstallInf]

HKLM, %DISPLAY% autorunOnOff,,,

HKLM, %DISPLAY% autorunOnOff, DisplayName,,%NAME_ON%

HKLM, %DISPLAY% autorunOnOff, UninstallString,,\"rundll32 setupapi, InstallHINFSection DefaultUninstall 132 %17%\primer.INF"


[DefaultUninstall]

AddReg = AutoRunOn


[AutoRunOn]

HKLM, %PATH%, AutoRun, 0x00010001, 1

HKLM, %DISPLAY% autorunOnOff, DisplayName,,%NAME_OFF%

HKLM, %DISPLAY% autorunOnOff, UninstallString,,\"rundll32 setupapi, InstallHINFSection DefaultInstall 132 %17%\primer.INF"


[INFcopy]

primer.INF


[DestinationDirs]

INFcopy = 17


[SourceDisksFiles]

primer.INF = 55


[SourceDisksNames]

55 = %DISKNAME%, , 1

;ΠžΠΏΠΈΡΡ‹Π²Π°Π΅Ρ‚ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ Π² INF-Ρ„Π°ΠΉΠ»Π΅


[Strings]

PATH = "SYSTEM\CurrentControlSet\Services\Cdrom"

DISPLAY = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"

NAME_ON = "Π’ΠΎΡΡΡ‚Π°Π½ΠΎΠ²ΠΈΡ‚ΡŒ автоматичСский запуск дисков"

NAME_OFF="ΠžΡ‚ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ автоматичСский запуск дисков"

DISKNAME = "parad0x-des1Gn"

Π”ΠΈΠ°Π»ΠΎΠ³ установки ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Windows

ΠžΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎΠΉ Ρ‡Π°ΡΡ‚ΡŒΡŽ ΠΎΠΊΠ½Π° Установка ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ являСтся Π΄ΠΈΠ°Π»ΠΎΠ³ Установка ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Windows, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ вызываСтся Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ. Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Π΄Π°Π½Π½Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя свСдСния Π½Π΅ ΠΎΠ±ΠΎ всСх ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°Ρ… Windows, доступных Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅. НапримСр, с Π΅Π³ΠΎ ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ нСльзя ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ с ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π° стандартныС ΠΈΠ³Ρ€Ρ‹, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Π‘Π°ΠΏΠ΅Ρ€ ΠΈΠ»ΠΈ ΠŸΠ°ΡƒΠΊ. Π­Ρ‚ΠΎ происходит ΠΏΠΎΡ‚ΠΎΠΌΡƒ, Ρ‡Ρ‚ΠΎ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ удалСния ΠΈΠ»ΠΈ установки ΠΈΠ³Ρ€ скрыта ΠΈΠ· Π΄ΠΈΠ°Π»ΠΎΠ³Π° установки ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Windows. Бписок содСрТимого Π΄ΠΈΠ°Π»ΠΎΠ³Π° Установка ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Windows описываСтся Π² Ρ„Π°ΠΉΠ»Π΅ sysoc.INF, располоТСнном Π² ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π΅ %systemroot%\INF. Π”Π°Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ Π² сСбя Π±Π»ΠΎΠΊ INF-Ρ„Π°ΠΉΠ»Π° [Components]. Π‘Π»ΠΎΠΊ содСрТит Π½Π°Π±ΠΎΡ€Ρ‹ строк, ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‰ΠΈΡ…, Π±ΡƒΠ΄Π΅Ρ‚ Π»ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы Windows XP. Π‘Ρ‚Ρ€ΠΎΠΊΠΈ ΠΈΠΌΠ΅ΡŽΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚:

ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Β»=Β«Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° для Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ²Β», «функция Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈΒ», Β«INF-Ρ„Π°ΠΉΠ», ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹Β»,Β«ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ²Β»,Β«Π½ΠΎΠΌΠ΅Ρ€Β»

Π‘Π»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ элСмСнты ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ Π²Π°ΠΆΠ½Ρ‹ΠΌΠΈ.

β–  INF-Ρ„Π°ΠΉΠ», ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹ β€” описываСт Ρ€Π°Π·Π΄Π΅Π»Ρ‹, ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅ Установка ΠΈ ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. ИмСнно Ρ‚Π°ΠΊΠΎΠΉ INF-Ρ„Π°ΠΉΠ» сСйчас ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ создан.

β–  ΠžΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² β€” Ссли Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΏΠΎΠ»Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‚ΠΎΡΡ‚ΡŒ слово HIDE, Ρ‚ΠΎ Π΄Π°Π½Π½Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒΡΡ Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Ρ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Windows. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ отобраТался Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ‡Ρ‚ΠΎΠ±Ρ‹ это ΠΏΠΎΠ»Π΅ Π±Ρ‹Π»ΠΎ пустым.

β–  ΠΠ°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π΄ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ Π² Π΄ΠΈΠ°Π»ΠΎΠ³ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ удалСния ΠΈΠ³Ρ€, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π² строкС, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰Π΅ΠΉΡΡ с ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€Π° games, ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ строку HIDE.

На рис. 15.2 ΠΏΠΎΠΊΠ°Π·Π°Π½ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ содСрТимого этого Ρ„Π°ΠΉΠ»Π°.

Рис. 15.2 .Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΠΌΠΎΠ΅ Ρ„Π°ΠΉΠ»Π° sysoc.INF


Π”Ρ€ΡƒΠ³ΠΎΠΉ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ являСтся Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π² Π΄Π°Π½Π½Ρ‹ΠΉ Π΄ΠΈΠ°Π»ΠΎΠ³ своих ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ². Для этого Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ сначала ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ INF-Ρ„Π°ΠΉΠ», ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π½ΠΎΠ²Ρ‹Π΅ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹, Π° ΠΏΠΎΡ‚ΠΎΠΌ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π² Ρ„Π°ΠΉΠ»Π΅ sysoc.inf ссылку Π½Π° созданный INF-Ρ„Π°ΠΉΠ». Π‘Π½Π°Ρ‡Π°Π»Π° посмотрим Π½Π° простой ΠΏΡ€ΠΈΠΌΠ΅Ρ€ INF-Ρ„Π°ΠΉΠ»Π°. Π’ этом ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ сразу создаСтся ΠΊΠΎΡ€Π½Π΅Π²ΠΎΠΉ Ρ€Π°Π·Π΄Π΅Π», ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Π΅ΠΌΡ‹ΠΉ нСпосрСдствСнно Π² Π΄ΠΈΠ°Π»ΠΎΠ³Π΅ установки ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Windows, Π΄Π²Π° Π²Π»ΠΎΠΆΠ΅Π½Π½Ρ‹Ρ… Π² этот Ρ€Π°Π·Π΄Π΅Π» ΠΏΠΎΠ΄Ρ€Π°Π·Π΄Π΅Π»Π°, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΅Ρ‰Π΅ Π΄Π²Π° Ρ€Π°Π·Π΄Π΅Π»Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈ Π±ΡƒΠ΄ΡƒΡ‚ ΡƒΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Ρ‹. Π’ нашСм случаС эти Ρ€Π°Π·Π΄Π΅Π»Ρ‹ Π±ΡƒΠ΄ΡƒΡ‚ просто ΡΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ (ΠΈΠ»ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ, Π² зависимости ΠΎΡ‚ состояния Ρ„Π»Π°ΠΆΠΊΠ°) Π²Π΅Ρ€ΡΠΈΡŽ Windows Π½Π° Π Π°Π±ΠΎΡ‡Π΅ΠΌ столС, Π° Ρ‚Π°ΠΊΠΆΠ΅ ΡΠΊΡ€Ρ‹Π²Π°Ρ‚ΡŒ (ΠΈΠ»ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ) Π½Π°Π·Π²Π°Π½ΠΈΠ΅ Π·Π½Π°Ρ‡ΠΊΠ° Мой ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€.