Тайните на статията за системния регистър на Windows програми книга в регистъра на Windows Vista

Тайните на Windows: статии за по вписванията, rundll32.exe, програми Book регистър на Windows Vista. INF-файлове

Книгата "Регистърът на Windows Vista. На 100%," Глава 1. Основна информация за регистъра, 1.3. Скриптови езици и регистър: INF-файлове.







На страниците на тази книга, вие и аз няма да навлизам в тънкостите на програмирането в сценария - единственото нещо, което ни интересува, е способността им да работят с системния регистър.

Файлът с разширение .inf е обикновен текстов файл, който може да съдържа специални команди за работа с регистъра, файловата система и услугите, както и други компоненти на операционната система Windows Vista. Като правило, INF-файлове, използвани за инсталиране на допълнителен хардуер или софтуер.

Тези файлове не са нови Windows Vista операционна система - те са все още налични в Windows 95. Като се започне от Windows 98 възможности INF файлове значително разшириха допълнително advapi32.dll библиотека. В този сценарий, който се използва в работата си advapi32.dll библиотека (тя може да бъде свързан към сценария или не), наречена разширени INF-файлове.

Тъй функционалност INF-файл остава почти непроменена.

С INF-файл можете да направите следното с регистъра: добавяне, изтриване и редактиране на системния регистър, настройки и редактиране на състоянието на отделни части от параметъра. За тази цел, на отделни ключови думи AddReg, DelReg, BitReg.

Основни синтактични INF-файлове

Преди описанието на ключовите думи, които можете да използвате за работа с регистъра, нека все пак живее за кратко на основния синтаксис на обичайната INF-файл (т.е. не удължен).

Преди всичко, обърнете внимание на включването на 2.02. Този списък съдържа образец на прост INF-файл.

.inf файлове се състоят от ключови думи, секции и отбори.

Системни и потребителски форум

Секции могат да бъдат персонализирани, имената на които могат да бъдат такива, и система, които са строго определени имена. Например, във файла, посочени в обява 2,01, дяловете на системата са версиите и DefaultInstall.

Версия Раздел версия е задължителна част от всяко INF-файл. Най-малкото, тя трябва да включва една ключова дума - подпис. С тази дума се определя от версията на операционната система, за която е създаден INF-файла.

Например, ако на INF-файл е създаден за семейството Windows 9x на операционни системи (като правило, такива INF файлове поддържат всички на операционната система Windows, независимо от семейството, към която принадлежат), а след това стойността на ключовата дума трябва да бъде низ $ CHICAGO $. Ако файлът е създаден за семейството операционни системи Windows NT, то стойността на ключовата дума трябва да бъде низ $ Windows NT $.

DefaultInstall Друг задължителен раздел INF-файл е раздел DefaultInstall на. Този раздел е първата част на INF-файл, който ще се справи с операционната система. Тя е в този раздел трябва да описва всички необходими ключови думи.

Ключови думи

Обикновено, ключови думи са специални струни, които сочат към персонализирани секции INF-файл. В зависимост от името на ключовата дума, съдържанието на съответния раздел на потребителя могат да се тълкуват по различни начини.

Как да започнете INF-файлове

Основни синтактични INF файлове ние се демонтират. Но преди да започнете да се опишат специфични ключови думи трябва да се разгледа допълнително начин за започване на INF-файлове.

Започнете от черупка лесният начин да започнете на INF-файл е да се покаже своята контекстното меню и изберете Install команда. След като го направите, започнете InfDefaultInstall.exe програма.

InfDefaultInstall.exe програма е нова операционна система Windows Vista. Тази програма е една черупка, която работи команда rundll32.exe setupapi на, InstallHinfSection DefaultInstall 132 "път към INF-файла."

Използване на Run команда rundll32.exe INF-файл и можете да притежавате - с setupapi командния rundll32.exe, InstallHinfSection «първоначалната точка" "флагове" "път към INF-файл". Той използва тази команда InfDefaultInstall.exe програма.

  • Първоначалната секция. Раздел определя INF-файл, който съдържа ключови думи. Когато използвате програма като InfDefaultInstall.exe дял Винаги трябва да има раздел DefaultInstall. Ако се натъкнете на INF-файла с помощта rundll32.exe команди, можете ръчно да определите началната точка.
  • Знамена. Знамена позволяват да определите действията, които се случват, след като инсталирате INF-файла. Следните флагове.
    • 128. След инсталирането на INF-файла, за да рестартирате компютъра, не е необходимо.
    • 129. След инсталирането на INF-файл рестартирате компютъра.
    • 130. След инсталирането на INF-файла, за да поиска от потребителя, за да рестартирате компютъра.
    • 131. Ако операционната система е установил необходимостта да рестартирате компютъра си, го изпълни.
    • 132. Ако операционната система посочи нуждата да се рестартира компютъра, поиска от потребителя, преди да рестартирате.
  • Път към INF-файл. Той определя пътя към INF-файла, който искате да инсталирате, и името му.

Работещи напреднал INF-файл Ако създадете разширение INF-файл, а след това по стандартния начин за инсталиране на INF-файлове, няма да правя. За да инсталирате продължителен INF-файла, трябва да използвате командата rundll32.exe ADVPACK.dll, LaunchINFSectionEx «наименование на INF-файл", "начална точка", "името на кабината-файл", "знаме". И е част от този отбор, тъй като името на INF-файл и първоначалната част от нас вече са запознати с rundll32.exe екип, за да инсталирате обичайните INF-файлове. В останалата част от екипа ще бъдат обсъдени по-долу.

Под ощипвам, работещи с ползвателите на системата Windows разберат различните методи за редактиране на системния регистър, чрез който се активират някои допълнителни функции на Windows, или за по-добре се промени поведението на операционната система.

Както бе споменато по-горе, че единственият начин да инсталирате Advanced INF-файл е да използвате командата rundll32.exe. Все пак, ако често се работи с такива INF-файлове, може да изглежда неудобно. В този случай, можете да създадете допълнителен команда, за да ги инсталирате в разширения режим в контекстното меню INF-файлове. Това е достатъчно, за да настроите параметър (по подразбиране) бранш регистрирате HKCR \ inffile \ черупка \ удължен инсталирате \ команда стойност rundll32.exe ADVPACK.dll, LaunchINFSectionEx% 1, DefaultInstall. След това новият екип удължен инсталиране се появява в контекстното меню INF-файлове.

Например, по-горе ощипване може да се извърши с помощта на проста рег-файл е показано на Обява 2.03.

Промяна на системния регистър

За да редактирате настройките и ключове в регистъра с помощта на ключовата дума INF-файл се използва AddReg.

Тази ключова дума показва форумите INF-файл (ако искате да посочите повече от един дял, просто разделете ги със запетаи), които съдържат описание на редактирането на системния регистър. Раздели, които са описани по ключова дума се обработват последователно. Тези секции имат следния формат (виж Обява 2.04).

Това корен сечение на линията определя влизане корен регистър, който е променлив параметър.

В този случай, вместо името на корен дял трябва да се уточни, е вече познат ни от наименованието на програмата reg.exe HKCU, HKLM, HKU, HKCR (HKEY_CLASSES_ROOT замества корен дял), НКСС (замества HKEY_CURRENT_CONFIG кореновия дял), HKR (замества клон на регистъра HKLM \ SYSTEM \ CurrentControlSet \ Control \ Class \\ «номер на устройство" и се използва при инсталиране на ново оборудване).

Този клон на регистъра на линията определя останалата част от пътя до клон регистър, в който трябва да се промени. Ако бранш регистър съдържа интервали, тя трябва да бъде цитиран.

Този параметър е част от поредица съдържа името на параметъра, чиято стойност се променя. Ако името на параметъра съдържа интервали, тя трябва да бъде цитиран.

В този случай, ако имате нужда да промените настройките (по подразбиране) на даден регистратурата, просто не уточняват тази част на линията, като се остави празно.

параметър флаг вид на първо място чрез използването на флага на типа показва вида на параметър, за да бъде променена. В допълнение, използването на този флаг, можете да посочите допълнителна информация относно промяната на параметъра.

параметър тип флаг е малко маска, където определянето на битовете е описано по-долу.

Този флаг може да се използва само за параметрите тип REG_MULTI_SZ.

  • 0h00000010. Вместо това, да създаде или да промените настройките, направете създаването само на определен ключ на системния регистър.
  • 0h00000020. Променете стойността на параметъра е разрешено само ако тази опция вече съществува в системния регистър.






  • Тази стойност на параметъра на линията включва нова стойност променя или добавя параметър.

    резюмиране

    Нека да обобщи всички възможности, които предлагат да ни дума AddReg.

    За създаване на параметър или редактирате стойността, ще трябва да използвате низ от формуляра "корен дял", "регистър клона", "Име на параметъра", "стойност" "знаме". Като прибавим към флаг, съответстваща битови маски в също може да се определи дали за промяна на настройката, ако то вече присъства в регистъра (или, ако не е в регистъра).

    За да добавите низ стойност на параметъра тип REG_MULTI_SZ, трябва да използвате низ от формуляра "корен дял", "клон на регистъра", "Името на параметъра", 0x00010008, "стойност".

    За да изтриете настройка от системния регистър, трябва да използвате низ от формуляра "корен дял", "регистър клона", "Име на параметъра", 0x00000004.

    За създаване на клон на системния регистър, трябва да използвате низ от формуляра "корен дял", "регистър клона" ,, 0h00000010.

    Като пример, нека да разгледаме един прост INF-файл (Обява 2.05), която деактивира автоматичното стартиране поставена в CD-ROM устройството. За тази цел тя определя вида на параметъра REG_DWORD Autorun 0.

    В допълнение, INF-файл също добавя към стойността на тип параметър REG_MULTI_SZ AutoRunAlwaysDisable име дискове, CD-та за автоматично стартиране, които не са разрешени във всеки случай.

    Настройките се изтриват и ключове в регистъра

    Въпреки факта, че можете да премахнете записа в системния регистър, както и използването на AddReg ключова дума, по-специално за тази операция също създаде нова ключова дума DelReg за нас.

    Тъй като ние се счита за ключова дума AddReg, ключова дума DelReg показва потребителското раздел INF-файла. Едва сега раздел ще съдържа информация за бранша или параметър, за да бъде заличено от регистъра. Форматът на тази секция следните редове: "корен дял регистър", "клон регистрирате", "параметър", "изтриване операция знаме", "пример да се премахне."

    Назначаване на части на тръбопровода като корен ключ, клон на регистъра и настройка вече знаем от описанието ключови думи AddReg. Останалата част от линията вече са взети под внимание.

    операция Flag отстраняване отстраняването на следните флагове.

    Пример за премахване Тази част от низа се прилага само при отстраняване на параметър тип REG_MULTI_SZ (bitmask 0h00018002 флаг) и определя част от стойността на параметъра, които ще бъдат изключени от настройката.

    Работа с битова маска

    Уникалната способност на стандартни INF-файлове е реализацията на възможността за работа с отделните битове на стойността на регистъра на параметъра. За да направите това, се използва тази BitReg. Тази ключова дума показва персонализирани секции, които могат да съдържат една линия със следния формат: "корен дял регистър", "клон регистрирате", "параметър", "работа знаме", "операция маска", "брой байтове на параметъра".

    След запознаване с ключови думи и AddReg DelReg неизвестен за нас само за следващата част от низ в този формат.

    Flag операции с използване на знаме на работа може да се определи действията, които ние ще се извърши върху специфични части от параметъра - или ги загубите или инсталиране. Този флаг може да отнеме следните стойности.

    • 0h00000000. Каза нулиране малко.
    • 0h00000001. Инсталирайте определен бит.
    • 0h00040000. Изработване определени промени в регистъра на 32-битова, а не на 64-битова версия. Това малко маска може да се използва в операционните системи, 64-битови.

    Тази маска експлоатация на линията ви позволява да определите най-бита на един байт на стойността на параметъра (веднъж можете да редактирате само бита на един от най-байта на параметъра), върху което трябва да се извърши операцията, определена операция флаг (нулиране или определени параметри).

    операция маска трябва да се състои от 8 числа - или единици или нули. Всички битове, съответстващи параметър байт, на мястото на която съдържа операция маска единица се нулират или определени (в зависимост от флага на работа).

    Байт номер в стойността на параметъра Както и с един ред INF-файл може да се редактира само бита на един байт на стойността на параметъра, това поле показва параметъра байт, които функционирането ще се прилага маската.

    Имайте предвид, че номерирането започва байта стойностите на параметрите зависят от вида на параметър. Ако редактирана параметър REG_DWORD тип стойност, най-значително (т.е., най-дясната) байт на параметъра е 0. Ако номерът е редактирана параметър тип Reg_binary стойност, тогава най-маловажния байт на стойността на параметъра (лявата) е номер 0.

    Рейтинг: 0
    Оценка 1 2 3 4 5