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

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ «ВСхнология Windows Installer. Π§Π°ΡΡ‚ΡŒ I. ΠžΠ±Π·ΠΎΡ€ возмоТностСй». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 4

Автор Алифанов АндрСй

ΠŸΠ Π˜ΠœΠ•Π§ΠΠΠ˜Π• Π’Π°ΠΊΠΈΠ΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ ΠΊΠ°ΠΊ InstallShield Developer ΠΈ Wise Installer ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Π½Π΅ ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ Ρ‚Π°ΠΊΠΎΠ³ΠΎ ТСсткого порядка заполнСния Ρ‚Π°Π±Π»ΠΈΡ†. Но рСкомСндуСтся всС-Ρ‚Π°ΠΊΠΈ Ρ‚Ρ‰Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΌΠ°Ρ‚ΡŒ структуру ΠΏΠ°ΠΊΠ΅Ρ‚Π° инсталляции ΠΏΠ΅Ρ€Π΅Π΄ Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ Π½Π°Ρ‡Π°Ρ‚ΡŒ Π·Π°ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π±Π°Π·Ρƒ Π΄Π°Π½Π½Ρ‹Ρ….

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° этой Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½Π° рисункС 2.

Рисунок 2. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π³Ρ€ΡƒΠΏΠΏΡ‹ Π€Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

Π­Ρ‚Π° Π³Ρ€ΡƒΠΏΠΏΠ° состоит ΠΈΠ· 15 Ρ‚Π°Π±Π»ΠΈΡ†. Π˜Ρ… ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС Π΄Π°Π½ΠΎ Π½ΠΈΠΆΠ΅.

Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС File Π’ этой Ρ‚Π°Π±Π»ΠΈΡ†Π΅ пСрСчислСны Ρ„Π°ΠΉΠ»Ρ‹, входящиС Π² ΠΈΠ½ΡΡ‚Π°Π»Π»ΡΡ†ΠΈΡŽ. Π’Π°ΠΊ ΠΊΠ°ΠΊ Ρ„Π°ΠΉΠ»Ρ‹ привязаны ΠΊ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌ, ΠΈΡ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΌ, эта Ρ‚Π°Π±Π»ΠΈΡ†Π° связана с Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ Component RemoveFile Π’ этой Ρ‚Π°Π±Π»ΠΈΡ†Π΅ содСрТится список Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ RemoveFiles Font Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит список Ρ„Π°ΠΉΠ»ΠΎΠ² ΡˆΡ€ΠΈΡ„Ρ‚ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Π·Π°Ρ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π² систСмС SelfReg Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит список ΡΠ°ΠΌΠΎΡ€Π΅Π³ΠΈΡΡ‚Ρ€ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ…ΡΡ ΠΌΠΎΠ΄ΡƒΠ»Π΅ΠΉ (Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ динамичСской ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈ, ΡΠΊΡΠΏΠΎΡ€Ρ‚ΠΈΡ€ΡƒΡŽΡ‰ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DllRegisterServer ΠΈ DllUnregisterServer). Installer Π½Π΅ рСгистрируСт EXE-Ρ„Π°ΠΉΠ»Ρ‹ Media Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° описываСт Π½Π°Π±ΠΎΡ€ дисков инсталляции BindImage Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ привязках исполняСмых Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΠ»ΠΈ DLL 1 MoveFile Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит список Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ пСрСнСсти ΠΈΠ»ΠΈ ΡΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Π²ΠΎ врСмя инсталляции ΠΈΠ· исходного ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³Π° Π² Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ DuplicateFile Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит список Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠ±Π»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΡ€ΠΈ инсталляции: Π»ΠΈΠ±ΠΎ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³ с Ρ‚Π΅ΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΈ исходный Ρ„Π°ΠΉΠ», Π»ΠΈΠ±ΠΎ Π² Ρ‚ΠΎΡ‚ ΠΆΠ΅ ΠΊΠ°Ρ‚Π°Π»ΠΎΠ³, Π½ΠΎ с Π΄Ρ€ΡƒΠ³ΠΈΠΌ ΠΈΠΌΠ΅Π½Π΅ΠΌ IniFile Π’ этой Ρ‚Π°Π±Π»ΠΈΡ†Π΅ содСрТится информация для создания .ini-Ρ„Π°ΠΉΠ»ΠΎΠ², Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Ρ… ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ. Π­Ρ‚ΠΈ Ρ„Π°ΠΉΠ»Ρ‹ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ, Ссли содСрТащий ΠΈΡ… ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ Π²Ρ‹Π±Ρ€Π°Π½ для инсталляции Π² локальном Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΠΈΠ»ΠΈ с источника инсталляции RemoveIniFile Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΈΠ· .ini-Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΏΡ€ΠΈ инсталляции прилоТСния Environment Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для задания ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… окруТСния 2 Icon Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° Ρ…Ρ€Π°Π½ΠΈΡ‚ Ρ„Π°ΠΉΠ»Ρ‹ ΠΈΠΊΠΎΠ½ΠΎΠΊ. КаТдая ΠΈΠΊΠΎΠ½ΠΊΠ° этой Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π²ΠΎ врСмя инсталляции копируСтся Π² ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» Π½Π° дискС 3 FileSFPCatalog Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ систСмой Windows File Protection Π² ОБ Windows Me SFPCatalog Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ систСмой Windows File Protection Π² ОБ Windows Me MsiFileHash Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° Ρ…Ρ€Π°Π½ΠΈΡ‚ 128-разрядноС Ρ…ΡΡˆ-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для исходных Ρ„Π°ΠΉΠ»ΠΎΠ² Π² ΠΏΠ°ΠΊΠ΅Ρ‚Π΅ инсталляции 4

ΠŸΠ Π˜ΠœΠ•Π§ΠΠΠ˜Π•

1. Для получСния Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ привязках смотритС описаниС Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ Windows API BindImageEx

2. Π’ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах Windows95/98 Π² этой Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Ρ‚Π°ΠΊΠΆΠ΅ хранится список ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ Π² Ρ„Π°ΠΉΠ»Π΅ autoexec.bat

3. Π’Π°Π±Π»ΠΈΡ†Π° Icon ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ²

4. Π’Π°Π±Π»ΠΈΡ†Π° MsiFileHash ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для Ρ„Π°ΠΉΠ»ΠΎΠ², Π½Π΅ содСрТащих ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ вСрсиях. Windows Installer ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈΠ· этой Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ лишнСС ΠΊΠΎΠΏΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ², ΡƒΠΆΠ΅ содСрТащихся Π½Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΎΠΌ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π΅ ΠΈ ΡΠΎΠ²ΠΏΠ°Π΄Π°ΡŽΡ‰ΠΈΡ… с Ρ„Π°ΠΉΠ»Π°ΠΌΠΈ ΠΈΠ· ΠΏΠ°ΠΊΠ΅Ρ‚Π° инсталляции.

Π’Π°Π±Π»ΠΈΡ†Ρ‹ записСй Π² рССстрС Windows

Π­Ρ‚Π° Π³Ρ€ΡƒΠΏΠΏΠ° содСрТит Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΠΎΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‰ΠΈΠ΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² рССстрС Windows. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΠΎΠΊΠ°Π·Π°Π½Π° Π½Π° рисункС 3.

Рисунок 3. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π³Ρ€ΡƒΠΏΠΏΡ‹ Ρ‚Π°Π±Π»ΠΈΡ† Записи Π² рССстрС Windows.

Π’Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΡŒ, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ ΠΆΠ΅, Π·Π°ΠΌΠ΅Ρ‚ΠΈΠ», Ρ‡Ρ‚ΠΎ Π½Π° рисункС ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈΠ· Π΄Ρ€ΡƒΠ³ΠΈΡ… Π³Ρ€ΡƒΠΏΠΏ, Ρ‚Π°ΠΊΠΈΠ΅, ΠΊΠ°ΠΊ Component, Feature ΠΈ File. Π­Ρ‚ΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Ρ‹ сюда для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π±ΠΎΠ»Π΅Π΅ ясно ΠΏΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ Π»ΠΎΠ³ΠΈΠΊΡƒ Ρ€Π°Π±ΠΎΡ‚Ρ‹ этой Π³Ρ€ΡƒΠΏΠΏΡ‹. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, здСсь ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹, ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π²ΡˆΠΈΠ΅ΡΡ Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… Π³Ρ€ΡƒΠΏΠΏΠ°Ρ…, Π½ΠΎ здСсь ΠΈΠ³Ρ€Π°ΡŽΡ‰ΠΈΠ΅ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π΄Ρ€ΡƒΠ³ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ (это Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ SelfReg ΠΈ Environment).

Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, эта Π³Ρ€ΡƒΠΏΠΏΠ° Π²ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ 11 Ρ‚Π°Π±Π»ΠΈΡ†, ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Π°Π½ΠΎ Π½ΠΈΠΆΠ΅:


Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС Extension Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит список Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠΉ Ρ„Π°ΠΉΠ»ΠΎΠ², ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… устанавливаСмой ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΎΠΉ, вмСстС с привязанными ΠΊ этим Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡΠΌ функциями ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°ΠΌΠΈ Verb Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° связываСт ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄Π°Ρ…, связанных с Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡΠΌΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ² ΠΈΠ· ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. НаличиС этих Ρ‚Π°Π±Π»ΠΈΡ† Π² связкС с Ρ‚Π°Π±Π»ΠΈΡ†Π΅ΠΉ Feature позволяСт Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ прилоТСния TypeLib Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит записи, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ для рСгистрации Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊ Ρ‚ΠΈΠΏΠΎΠ² 1 MIME Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° связываСт Ρ‚ΠΈΠΏΡ‹ MIME c CLSID ΠΈΠ»ΠΈ Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΠ΅ΠΌ Ρ„Π°ΠΉΠ»Π°. Π­Ρ‚ΠΎ позволяСт ΡΠ²ΡΠ·Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ MIME ΠΈ Feature, ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΠΏΡƒΡ‚ΡŒ для ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ прилоТСния SelfReg Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ описаниС Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ Π€Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ 2 Class Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ для Ρ€Π°Π±ΠΎΡ‚Ρ‹ COM-сСрвСров ProgId Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ProgID для COM-сСрвСров AppId Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для конфигурирования DCOM-сСрвСров Environment Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ описаниС Π² Π³Ρ€ΡƒΠΏΠΏΠ΅ Π€Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ 3 Registry Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит всю ΠΏΡ€ΠΎΡ‡ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ, Π½Π΅ Π²ΠΎΡˆΠ΅Π΄ΡˆΡƒΡŽ Π² Π΄Ρ€ΡƒΠ³ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠ°Ρ информация, Π΄Π°Π½Π½Ρ‹Π΅, установки ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈ Ρ‚.Π΄. RemoveRegistry Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ записях Π² рССстрС, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ ΠΏΡ€ΠΈ инсталляции прилоТСния

ΠŸΠ Π˜ΠœΠ•Π§ΠΠΠ˜Π•

1. ΠŸΡ€ΠΈ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ прилоТСния Π½ΠΈΠΊΠ°ΠΊΠΈΡ… записСй ΠΎ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ… Ρ‚ΠΈΠΏΠΎΠ² Π½Π΅ дСлаСтся. Π—Π°ΠΏΠΈΡΡŒ производится Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚ установки ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚Π°, связанного с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΎΠΉ.

2. ИспользованиС саморСгистрации Π² Windows Installer НЕ Π Π•ΠšΠžΠœΠ•ΠΠ”Π£Π•Π’Π‘Π― ΠΈ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для обСспСчСния ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎΠΉ совмСстимости с ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΌΠΈ тСхнологиями установки ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ. ВмСсто этого рСкомСндуСтся Π·Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Π½ΡƒΠΆΠ½ΠΎΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠ΅ΠΉ, Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½ΠΎΠΉ Ρ‚ΠΎΠΉ, Ρ‡Ρ‚ΠΎ прописываСт Π½ΡƒΠΆΠ½Ρ‹ΠΉ ΠΌΠΎΠ΄ΡƒΠ»ΡŒ ΠΏΡ€ΠΈ Π²Ρ‹Π·ΠΎΠ²Π΅ Π΅Π³ΠΎ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ DllRegisterServer.

3. Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π² Π΄Π°Π½Π½ΡƒΡŽ Π³Ρ€ΡƒΠΏΠΏΡƒ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… систСмах Windows NT / 2000 / XP Π΄Π°Π½Π½Ρ‹Π΅ ΠΈΠ· Π½Π΅Π΅ ΠΏΠΈΡˆΡƒΡ‚ΡΡ Π² рССстр.

Π‘ΠžΠ’Π•Π’ ΠŸΡ€ΠΈ Π·Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ этой Π³Ρ€ΡƒΠΏΠΏΡ‹ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠΏΡ‹Ρ‚Π°Ρ‚ΡŒΡΡ ΡΠ΄Π΅Π»Π°Ρ‚ΡŒ Ρ‚Π°Π±Π»ΠΈΡ†Ρƒ Registry ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΊΠΎΠΌΠΏΠ°ΠΊΡ‚Π½Π΅ΠΉ, помСстив ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ большС ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² Π΄Ρ€ΡƒΠ³ΠΈΠ΅, Π±ΠΎΠ»Π΅Π΅ спСцифичныС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹. Π­Ρ‚ΠΎ дСлаСтся, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Installer Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π²Ρ‹Π΄Π΅Π»ΠΈΡ‚ΡŒ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ рССстровых записСй Π² Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Registry ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ Π»ΠΎΠ³ΠΈΠΊΡƒ для задСйствования всСх своих возмоТностСй, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ - ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ установки ΠΏΠΎ Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΡŽ. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, Ρ‚Π°ΠΊΠΎΠΉ способ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ ΡƒΠΌΠ΅Π½ΡŒΡˆΠΈΡ‚ΡŒ риск записи лишнСй ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ COM-сСрвСрах.

БистСмныС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

Π­Ρ‚Π° Π³Ρ€ΡƒΠΏΠΏΠ° содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ структурС инсталляционной Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. Запросы ΠΊ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌ этой Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Ρ€Π°Π·Π½ΠΎΠΎΠ±Ρ€Π°Π·Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ ΠΏΠ°ΠΊΠ΅Ρ‚Π΅ инсталляции любого прилоТСния.

Π”ΠΈΠ°Π³Ρ€Π°ΠΌΠΌΡƒ этой Π³Ρ€ΡƒΠΏΠΏΡ‹ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ смысла Π½Π΅Ρ‚. НСкоторыС Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ этой Π³Ρ€ΡƒΠΏΠΏΡ‹ - статичСскиС, ΠΎΠ½ΠΈ ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ компиляции ΠΏΠ°ΠΊΠ΅Ρ‚Π° инсталляции ΠΈ Π½Π΅ связаны с Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ Ρ‚Π°Π±Π»ΠΈΡ†Π°ΠΌΠΈ. Другая ΠΆΠ΅ Ρ‡Π°ΡΡ‚ΡŒ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ хранится Π² Π±Π°Π·Π΅ Π΄Π°Π½Π½Ρ‹Ρ…, Π° создаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° врСмя выполнСния SQL-запросов.

Π˜Ρ‚Π°ΠΊ, эта Π³Ρ€ΡƒΠΏΠΏΠ° состоит ΠΈΠ· 5 Ρ‚Π°Π±Π»ΠΈΡ†, ΠΊΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄Π°Π½ΠΎ Π½ΠΈΠΆΠ΅:

Имя Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠšΡ€Π°Ρ‚ΠΊΠΎΠ΅ описаниС _Tables Π₯Ρ€Π°Π½ΠΈΡ‚ ΠΈΠΌΠ΅Π½Π° всСх Ρ‚Π°Π±Π»ΠΈΡ† инсталляционной Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ созданныС Π°Π²Ρ‚ΠΎΡ€ΠΎΠΌ ΠΏΠ°ΠΊΠ΅Ρ‚Π° для Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ†Π΅Π»Π΅ΠΉ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для использования Π² своих опСрациях). Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° доступна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ _Columns Π₯Ρ€Π°Π½ΠΈΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎΠ±ΠΎ всСх столбцах Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… инсталляционной Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…. Но Π²Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ столбцы Π² этой Ρ‚Π°Π±Π»ΠΈΡ†Π΅ Π½Π΅ хранятся. Как ΠΈ прСдыдущая Ρ‚Π°Π±Π»ΠΈΡ†Π°, доступна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° Ρ‡Ρ‚Π΅Π½ΠΈΠ΅ _Streams Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ ΠΏΠΎΡ‚ΠΎΠΊΠΈ Π΄Π°Π½Π½Ρ‹Ρ… OLE. Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° врСмСнная ΠΈ создаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… SQL-запросов, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ MsiRecordReadStream _Storages Π‘ΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° Π΄Π°Π½Π½Ρ‹Ρ… OLE. Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° Ρ‚Π°ΠΊΠΆΠ΅ врСмСнная ΠΈ создаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… SQL-запросов, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ MsiRecordSetStream _Validation Π­Ρ‚Π° Ρ‚Π°Π±Π»ΠΈΡ†Π° содСрТит ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ столбцах Π² Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ… Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ ΠΈΡ… ΠΈΠΌΠ΅Π½Π° ΠΈ Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Ρ‹ допустимых Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ, Π° Ρ‚Π°ΠΊΠΆΠ΅ Π΄Ρ€ΡƒΠ³ΡƒΡŽ Π²Π°ΠΆΠ½ΡƒΡŽ для Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡ€ΠΈ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ΅ цСлостности Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ…

Π’Π°Π±Π»ΠΈΡ†Ρ‹ поиска