Прочитав это, вы можете использовать asp для изменения реестра.
Слышали ли вы о знаменитом WSH? Это аббревиатура Windows Script Host. WSH — это инструкция сценария платформы Windows. Ее функция очень мощная, а также используются языки сценариев JScript и VBScript с простым синтаксисом, простыми в освоении и использовании и мощными функциями. достичь своих превосходных функций. Помимо изменения реестра, представленного в этой статье, он также может получать доступ к файлам Excel и обмениваться данными с сетью. Конечно, его самым большим преимуществом является то, что он может взаимодействовать с операционной системой, а изменение реестра - это всего лишь. способ взаимодействия с операционной системой. Верхушка айсберга. Многие пользователи Windows предпочитают его из-за его многочисленных преимуществ и практичности. Эта статья познакомит вас с ним, чтобы вы могли оценить элегантность WSH.
Расширение файла программы WSH, написанного на VBScript, — .vbs. Программа-скрипт интерпретируется и выполняется файлом wscript.exe в оконном интерфейсе и файлом cscript.exe в символьном интерфейсе. Формат команды: имя файла cscript. .vbs
Чтобы создать объект и использовать VBScript для изменения реестра, необходимо сначала создать объект, который может взаимодействовать с операционной системой, а затем использовать различные методы объекта для управления реестром. Метод и формат создания этого объекта следующие. :
Реестр операций Dim
Установить OperationRegistry=WScript.CreateObject("WScript.Shell")
Приведенный выше код создает объект OperationRegistry, который может взаимодействовать с операционной системой.
Методы объекта Наличие вышеуказанного объекта не означает, что мы можем немедленно управлять реестром. Мы также должны понимать несколько важных методов этого объекта для работы с реестром.
1. Операция RegRead для чтения реестра
2. Операция записи RegWrite в реестр
3. Операция удаления RegDelete в реестре
Кроме того, WSH также имеет два общих метода:
WScript.Echo() используется для отображения строки текстовой информации, что эквивалентно MsgBox() в VB.
Wscript.Quit() используется для выхода из программы VBScript.
Параметры метода требуют параметров для трех вышеуказанных операций RegRead, RegWrite и RegDelete, причем количество и форма параметров для этих операций различны. Ниже я расскажу об одном из их общих и существенных параметров:
Этот параметр можно назвать «параметром пути», который включает в себя корневой ключ, путь к первичному ключу и значение ключа. Метод выражения каждой части следующий:
Корневой ключ:
Существует два способа представления корневых ключей.
Способ 1: напрямую используйте его строку в реестре для его представления, например:
HKEY_CLASSES_ROOT, HKEY_CURRENT_USER и т. д. Способ 2. Для его обозначения используйте четыре буквы аббревиатуры. Первые две — HK, а последние две — первые буквы корневого ключевого слова. нравиться:
Корневой ключ HKEY_CLASSES_ROOT выражается как: HKCR, корневой ключ HKEY_CURRENT_USER может быть выражен как: HKCU и т. д.
Путь первичного ключа:
Путь к первичному ключу — это расположение первичного ключа целевого ключа в реестре, и каждый первичный ключ разделяется символами «». Например: «SoftwareMicrosoftWindowsCurrentVersionPolicies».
Ключевое значение:
Параметры «ключ-значение» следуют напрямую по пути первичного ключа. Например, полный путь выглядит так:
«HKCRSoftwareMicrosoftWindowsCurrentVersionPoliciesNoRun»
Подробное объяснение метода
1. Подробная интерпретация операции RegRead. Операция RegRead в основном используется для чтения значения по умолчанию или данных значения первичного ключа в реестре. Мы можем отправить считанные данные в соответствующую переменную, а затем использовать функцию MsgBox(). в VB отображение данных достигает цели чтения данных в реестре (вы также можете использовать метод Popup() объекта OperationRegistry для отправки прочитанных данных на экран), например:
'read.vbs (сохраните следующий код как файл read.vbs)
Реестр операций Dim
Установить OperationRegistry=WScript.CreateObject("WScript.Shell")
Тусклый Read_Data1,Read_Data2
Read_Data1=OperationRegistry.RegRead("HKCR.xxf")
'Прочитайте значение по умолчанию первичного ключа .xxf под корневым ключом HKEY_CLASSES_ROOT и отправьте данные в переменную Read_Data1
Read_Data2=OperationRegistry.RegRead("HKCR.xxfvalue")
'Прочитайте данные ключа значения под первичным ключом .xxf и отправьте данные в переменную Read_Data2
MsgBox("Default="&Read_Data1&" value="&Read_Data2)
'Отображать прочитанные данные
2. Подробное объяснение операции RegWrite. Операция записи RegWrite в основном используется для создания новых первичных ключей или значений ключей в реестре и присвоения им начального значения. Эта операция также может изменять данные существующих первичных ключей или значений ключей. в реестре, поэтому структура параметров операции записи более сложна, чем структура параметров операции чтения. Для нее требуются не только параметры пути, но также начальное значение и параметры типа.
Давайте сначала посмотрим на параметр начального значения. Этот параметр необходим для операций записи. Он может быть пустым (нулевым), но не может быть пропущен. При создании нового первичного ключа параметру начального значения присваивается значение первичного ключа по умолчанию. При создании нового значения ключа параметр начального значения становится начальными данными нового значения ключа. определяется параметром типа. В основном существует три типа:
(1)REG_SZ: тип символов. Этот тип является типом по умолчанию.
(2)REG_DWORD: двухбайтовый тип.
(3)REG_BINARY: двоичный тип.
Наиболее часто используются первый и второй типы из трех вышеуказанных типов. Третий тип в некоторых ситуациях может быть заменен вторым типом. Методы назначения этих трех типов следующие:
Для типа REG_SZ: напрямую присваивайте строку, например «текст», «строка» и т. д. Для типа REG_DWORD и типа REG_BINARY существует два метода назначения.
i) Непосредственно выраженные десятичными числами, например: 0, 1 и т. д.
ii) Выражается шестнадцатеричными числами, например: 0x12, 0xff и т. д. См. пример:
'write.vbs
Реестр операций Dim
Установить OperationRegistry=WScript.CreateObject("WScript.Shell")
По умолчанию=OperationRegistry.RegRead("HKCR")
'Получаем нулевое значение (null)
OperationRegistry.RegWrite "HKCR.xxf",по умолчанию
'Создайте новый первичный ключ.xxf под корневым ключом HKEY_CLASSES_ROOT и установите его значение по умолчанию пустым
OperationRegistry.RegWrite "HKCR.xxf","xxffile"
'Создайте новый первичный ключ .xxf под корневым ключом HKEY_CLASSES_ROOT и установите для него значение по умолчанию "xxffile"
OperationRegistry.RegWrite "HKCR.xxfvalue1","string"
'Создайте новое строковое значение ключа value1 под первичным ключом.xxf и установите для него начальное значение "string"
OperationRegistry.RegWrite "HKCR.xxfvalue2",1,"REG_DWORD"
'Создайте новое значение ключа REG_DWORD value2 под первичным ключом.xxf и установите его начальное значение 1
OperationRegistry.RegWrite "HKCR.xxfvalue3",0Xff,"REG_BINARY"
'Создайте новое значение двоичного ключа value3 под первичным ключом .xxf и установите его начальное значение в шестнадцатеричном формате ff
3. Подробное объяснение операции RegDelete. Операция удаления RegDelete в основном используется для удаления первичного ключа или значения ключа, который уже существует в реестре. Эта операция является чрезвычайно опасной операцией. Она может безжалостно удалить первичный ключ или значение ключа. реестр «Отрубить» будет работать беспрепятственно, независимо от того, насколько важны данные под ключом, поэтому будьте осторожны при использовании этой операции.
Форма параметров операции удаления практически идентична форме параметров операции чтения, за исключением одного небольшого различия, то есть операции удаления не требуется отправлять возвращаемое значение операции в определенную переменную, например:
'удалить.vbs
Реестр операций Dim
Установить OperationRegistry=WScript.CreateObject("WScript.Shell")
OperationRegistry.RegRead("HKCR.xxfvalue")
'Удалить значение ключа значения в первичном ключе .xxf
OperationRegistry.RegRead("HKCR.xxf")
'Удалите первичный ключ .xxf под корневым ключом HKEY_CLASSES_ROOT. Важно подчеркнуть, что не изменяйте первичные ключи или значения ключей, которые уже существуют в реестре, не говоря уже о их удалении, из-за неправильной записи или удаления. реестр серьезен. Это приведет к сбою системы. Если вы действительно хотите это сделать, сделайте резервную копию реестра.
Примеры применения
1. Прочтите «имя компьютера» этой машины.
'Читатьимякомпьютера.vbs
Dim ReadComputerName
Установить ReadComputerName=WScript.CreateObject("WScript.Shell")
Тусклое имя компьютера, RegPath
RegPath="HKLMSystemCurrentControlSetControlComputerNameComputerNameComputerName"
ИмяКомпьютера=ЧтениеИмяКомпьютера.RegRead(RegPath)
MsgBox("Имя компьютера"&ИмяКомпьютера)
2. Скройте маленькую стрелку на значке ярлыка.
'Скрытый.vbs
Тусклый СкрытыйСтрелкаЗначок
Set HiddenArrowIcon=WScript.CreateObject("WScript.Shell")
Тусклый RegPath1, RegPath2
RegPath1="HKCRlnkfileIsShortCut"
RegPath2="HKCRpiffileIsShortCut"
HiddenArrowIcon.RegDelete(RegPath1)
HiddenArrowIcon.RegDelete(RegPath2)
3. Преобразовать меню «Пуск»
'ChangeStartMenu.vbs
DimChangeStartМеню
Set ChangeStartMenu=WScript.CreateObject("WScript.Shell")
RegPath="HKCRSoftwareMicrosoftWindowsCurrentVersionPolicies"
Type_Name="REG_DWORD"
Ключ_Данные=1
StartMenu_Run="NoRun"
StartMenu_Find="Нет поиска"
StartMenu_Close="НетЗакрыть"
Подизменение (аргумент)
ChangeStartMenu.RegWrite RegPath&Argument,Key_Data,Type_Name
MsgBox("Успех!")
Конец субтитра
Call Change(StartMenu_Run) 'Отключить функцию «Выполнить» в меню «Пуск»
Call Change(StartMenu_Find) 'Отключаем функцию "Найти" в меню "Пуск"
Call Change(StartMenu_Close) 'Отключить функцию «Выключение системы» в меню «Пуск»
4. Добавьте в Windows самозапускающуюся программу. Эта программа может запускаться автоматически при включении компьютера.
'AddAutoRunProgram.vbs
'Предположим, что программа находится в папке c:myfile и имя файла autorun.exe.
Dim AutoRunПрограмма
Set AutoRunProgram=WScript.CreateObject("WScript.Shell")
RegPath="HKLMSoftwareMicrosoftWindowsCurrentVersionRun"
Type_Name="REG_SZ"
Key_Name="Автозапуск"
Key_Data="C:Myfileautorun.exe"
'Полный путь к файлу самозапускающейся программы
AutoRunProgram.Write RegPath&Key_Name,Key_Data,Type_Name
'Добавляем самозапускающуюся программу autorun.exe в группу автозагрузки
MsgBox("Успех!")