Depois de ler isso, você pode usar o asp para modificar o registro.
Já ouviu falar do famoso WSH? É a abreviatura de Windows Script Host. WSH é uma instrução de script da plataforma Windows. Sua função é muito poderosa e também usa linguagens de script JScript e VBScript com sintaxe simples, fácil de aprender e usar e funções poderosas para. alcançar suas excelentes funções além de modificar o registro apresentado neste artigo, ele também pode acessar arquivos Excel e se comunicar com a rede. Claro, sua maior vantagem é que ele pode se comunicar com o sistema operacional, e modificar o registro é apenas. uma forma de se comunicar com o sistema operacional. É por suas inúmeras vantagens e praticidade que é preferido por muitos usuários do Windows. Este artigo irá apresentá-lo para que você possa apreciar a elegância do WSH.
A extensão do arquivo de programa WSH escrito em VBScript é .vbs. O programa de script é interpretado e executado pelo arquivo wscript.exe na interface da janela e pelo arquivo cscript.exe na interface de caracteres. .
Para criar um objeto e usar VBScript para modificar o registro, você deve primeiro criar um objeto que possa se comunicar com o sistema operacional e, em seguida, usar vários métodos do objeto para operar o registro. O método e o formato de criação deste objeto são os seguintes. :
Dim OperationRegistro
Definir OperationRegistry=WScript.CreateObject("WScript.Shell")
O código acima cria um objeto OperationRegistry que pode se comunicar com o sistema operacional.
Métodos de objeto Ter o objeto acima não significa que podemos operar o registro imediatamente. Também devemos compreender vários métodos importantes deste objeto para operar o registro.
1. Operação RegRead para leitura do registro
2. Operação de gravação RegWrite no registro
3. Operação de exclusão RegDelete no registro
Além disso, o WSH também possui dois métodos gerais:
WScript.Echo() é usado para exibir uma string de informações de texto, que é equivalente a MsgBox() em VB.
Wscript.Quit() é usado para sair do programa VBScript.
Os parâmetros do método requerem parâmetros para as três operações RegRead, RegWrite e RegDelete, e o número e a forma dos parâmetros para essas operações são diferentes. A seguir falarei sobre um de seus parâmetros comuns e essenciais:
Este parâmetro pode ser chamado de "parâmetro de caminho", que inclui a chave raiz, o caminho da chave primária e o valor da chave. O método de expressar cada parte é o seguinte:
Chave raiz:
Existem duas maneiras de representar chaves raiz.
Método 1: use diretamente sua string no registro para representá-lo, como:
HKEY_CLASSES_ROOT, HKEY_CURRENT_USER, etc. Método 2: Use as quatro letras da abreviatura para representá-la. As duas primeiras são HK e as duas últimas são as primeiras letras da palavra-chave raiz. como:
A chave raiz HKEY_CLASSES_ROOT é expressa como: HKCR, a chave raiz HKEY_CURRENT_USER pode ser expressa como: HKCU, etc.
Caminho da chave primária:
O caminho da chave primária é o local da chave primária da chave de destino no registro, e cada chave primária é separada por caracteres "". Por exemplo: "SoftwareMicrosoftWindowsCurrentVersionPolicies"
Valor chave:
Os parâmetros de valor-chave seguem diretamente o caminho da chave primária. Por exemplo, um caminho completo se parece com isto:
"HKCRSoftwareMicrosoftWindowsCurrentVersionPoliciesNoRun"
Explicação detalhada do método
1. Interpretação detalhada da operação RegRead A operação RegRead é usada principalmente para ler o valor padrão ou dados de valor-chave da chave primária no registro. Podemos enviar os dados lidos para a variável correspondente e então usar a função MsgBox(). em VB. A exibição dos dados atinge o objetivo de ler os dados no registro (você também pode usar o método Popup() do objeto OperationRegistry para enviar os dados lidos para a tela), por exemplo:
'read.vbs (salve o seguinte código como arquivo read.vbs)
Dim OperationRegistro
Definir OperationRegistry=WScript.CreateObject("WScript.Shell")
Escurecer Read_Data1,Read_Data2
Read_Data1=OperationRegistry.RegRead("HKCR.xxf")
'Leia o valor padrão da chave primária .xxf na chave raiz HKEY_CLASSES_ROOT e envie os dados para a variável Read_Data1
Read_Data2=OperationRegistry.RegRead("HKCR.xxfvalor")
'Lê os dados da chave de valor na chave primária .xxf e envia os dados para a variável Read_Data2
MsgBox("Default="&Read_Data1&" valor="&Read_Data2)
'Mostra os dados lidos
2. Explicação detalhada da operação RegWrite A operação de gravação RegWrite é usada principalmente para criar novas chaves primárias ou valores de chave no registro e fornecer-lhes um valor inicial. Esta operação também pode modificar os dados de chaves primárias ou valores de chave existentes. no registro, portanto, a estrutura de parâmetros da operação de gravação é mais complicada do que a da operação de leitura. Ela não requer apenas parâmetros de caminho, mas também um valor inicial e parâmetros de tipo.
Vejamos primeiro o parâmetro de valor inicial. Este parâmetro é essencial para operações de gravação. Ele pode ser vazio (nulo), mas não pode ser omitido. Ao criar uma nova chave primária, o parâmetro de valor inicial é atribuído ao valor padrão da chave primária. Ao criar um novo valor de chave, o parâmetro de valor inicial torna-se os dados iniciais do novo valor de chave. determinado pelo parâmetro de tipo. Existem principalmente três tipos:
(1)REG_SZ: Tipo de caractere Este tipo é o tipo padrão.
(2)REG_DWORD: tipo de byte duplo.
(3)REG_BINARY: tipo binário.
O primeiro e o segundo tipos dos três tipos acima são os mais comumente usados. O terceiro tipo pode ser substituído pelo segundo tipo em algumas situações. Os métodos de atribuição desses três tipos são os seguintes:
Para o tipo REG_SZ: atribua diretamente com string, como "texto", "string", etc. Para o tipo REG_DWORD e o tipo REG_BINARY, existem dois métodos de atribuição.
i) Expressado diretamente por números decimais, como: 0, 1, etc.
ii) Expressado por números hexadecimais, como: 0x12, 0xff, etc. Ver exemplo:
'escrever.vbs
Dim OperationRegistro
Definir OperationRegistry=WScript.CreateObject("WScript.Shell")
Padrão=OperationRegistry.RegRead("HKCR")
'Obtém um valor nulo (nulo)
OperationRegistry.RegWrite "HKCR.xxf",Padrão
'Crie uma nova chave primária.xxf sob a chave raiz HKEY_CLASSES_ROOT e defina seu valor padrão como vazio
OperationRegistry.RegWrite "HKCR.xxf","xxffile"
'Crie uma nova chave primária .xxf sob a chave raiz HKEY_CLASSES_ROOT e defina seu valor padrão para "xxffile"
OperationRegistry.RegWrite "HKCR.xxfvalue1","string"
'Crie um novo valor de chave de string valor1 sob a chave primária.xxf e defina seu valor inicial como "string"
OperationRegistry.RegWrite "HKCR.xxfvalue2",1,"REG_DWORD"
'Crie um novo valor de chave REG_DWORD valor2 na chave primária.xxf e defina seu valor inicial como 1
OperationRegistry.RegWrite "HKCR.xxfvalue3",0Xff,"REG_BINARY"
'Crie um novo valor de chave binária value3 na chave primária .xxf e defina seu valor inicial para hexadecimal ff
3. Explicação detalhada da operação RegDelete A operação de exclusão RegDelete é usada principalmente para excluir a chave primária ou o valor da chave que já existe no registro. o registro. "Chop off" funcionará sem impedimentos, não importa quão importantes sejam os dados abaixo da chave, portanto, tenha cuidado ao usar esta operação.
A forma do parâmetro da operação delete é quase idêntica à forma do parâmetro da operação read, exceto por uma pequena diferença, ou seja, a operação delete não precisa enviar o valor de retorno da operação para uma determinada variável, por exemplo:
'excluir.vbs
Dim OperationRegistro
Definir OperationRegistry=WScript.CreateObject("WScript.Shell")
OperationRegistry.RegRead("HKCR.xxfvalor")
'Exclua o valor da chave de valor na chave primária .xxf
OperaçãoRegistry.RegRead("HKCR.xxf")
'Exclua a chave primária .xxf sob a chave raiz HKEY_CLASSES_ROOT É importante enfatizar que não altere as chaves primárias ou valores de chave que já existem no registro e muito menos exclua-os, porque escrita ou exclusão inadequada de. o registro é sério. Isso fará com que o sistema trave. Se você realmente quiser fazer isso, faça um backup do registro!
Exemplos de aplicação
1. Leia o "nome do computador" desta máquina
'LeiaNomeDoComputador.vbs
Dim ReadComputerName
Definir ReadComputerName=WScript.CreateObject("WScript.Shell")
Dim Nome do Computador, RegPath
RegPath="HKLMSystemCurrentControlSetControlComputerNameComputerNameComputerName"
NomeDoComputador=LeituraNomeDoComputador.RegRead(RegPath)
MsgBox("Nome do computador"&Nome do computador)
2. Oculte a pequena seta no ícone de atalho
'Oculto.vbs
Escurecer HiddenArrowIcon
Definir HiddenArrowIcon=WScript.CreateObject("WScript.Shell")
Escurecer RegPath1, RegPath2
RegPath1="HKCRlnkfileIsShortCut"
RegPath2="HKCRpiffileIsShortCut"
HiddenArrowIcon.RegDelete(RegPath1)
HiddenArrowIcon.RegDelete(RegPath2)
3. Transforme o menu “Iniciar”
'ChangeStartMenu.vbs
DimChangeStartMenu
Definir ChangeStartMenu=WScript.CreateObject("WScript.Shell")
RegPath="HKCRSoftwareMicrosoftWindowsCurrentVersionPolicies"
Type_Name="REG_DWORD"
Dados_chave=1
StartMenu_Run="NoRun"
StartMenu_Find="NoFind"
StartMenu_Close="NãoFechar"
Submudança (argumento)
ChangeStartMenu.RegWrite RegPath&Argumento,Key_Data,Type_Name
MsgBox("Sucesso!")
Finalizar sub
Call Change(StartMenu_Run) 'Desativa a função "Executar" no menu "Iniciar"
Call Change(StartMenu_Find) 'Desativa a função "Localizar" no menu "Iniciar"
Call Change(StartMenu_Close) 'Desativa a função "Desligar Sistema" no menu "Iniciar"
4. Adicione um programa de inicialização automática ao Windows. Este programa pode ser executado automaticamente quando o computador é ligado.
'AdicionarAutoRunProgram.vbs
'Suponha que o programa esteja na pasta c:myfile e o nome do arquivo seja autorun.exe
Escurecer Programa AutoRun
Definir AutoRunProgram=WScript.CreateObject("WScript.Shell")
RegPath="HKLMSoftwareMicrosoftWindowsCurrentVersionRun"
Type_Name="REG_SZ"
Key_Name="AutoRun"
Key_Data = "C:Meuarquivoautorun.exe"
'O nome completo do arquivo do caminho do programa de inicialização automática
AutoRunProgram.Write RegPath&Key_Name,Key_Data,Type_Name
'Adicione o programa de inicialização automática autorun.exe no grupo de inicialização
MsgBox("Sucesso!")