Índice:
- Etapa 1: Meu programa …
- Etapa 2: Travamento da unidade (parte 1)
- Etapa 3: Travamento da unidade (parte 2)
- Etapa 4: Travamento da unidade (Parte 3)
- Etapa 5: bloqueio da unidade
Vídeo: VBScript Drive Lock: 5 etapas
2024 Autor: John Day | [email protected]. Última modificação: 2024-01-30 11:36
Atualização: este programa agora tem a capacidade de ocultar as unidades bloqueadas especificadas
Depois de fazer meu bloqueio de tela que bloqueia o computador do usuário, decidi aceitar o desafio de fazer um bloqueio de unidade que bloqueia uma unidade.
Todos nós às vezes queremos manter os usuários fora de uma unidade (especialmente uma unidade USB). Portanto, este programa irá bloquear a unidade para evitar que usuários não autorizados tenham acesso a ela.
Ao contrário do meu bloqueio de tela, este script é muito complicado. Principalmente porque adicionei tantos se e então só para dar ao programa um toque profissional.
Este programa foi feito em VBScript. Nos próximos passos, mostrarei como o fiz.
Etapa 1: Meu programa …
Você pode baixar meu Drive Lock abaixo:
Aqui está o arquivo VBScript bruto LINK. Você terá que remover um dos 's' no final para que seja 'DriveLock.vbs' ou o que quiser, desde que termine em.vbs.
Etapa 2: Travamento da unidade (parte 1)
Aqui, vou mostrar a você a primeira parte do bloqueio da unidade … A primeira foto é o que aparece quando você executa o programa pela primeira vez.
Eu fiz isso para que você tenha três opções aqui, para bloquear uma unidade, para desbloquear unidade (s) ou sair.
Agora é assim que eu fiz:
Função DisplayPrompt () intSplash = MsgBox ("O que você gostaria de fazer?" & VbCrLf & vbCrLf _ & "[Clique em SIM para bloquear uma unidade]" & vbCrLf _ & "[Clique em NÃO para desbloquear a (s) unidade (s)] ", 35, cTitleBarMsg) If intSplash = 2 Then DisplaySplashScreen () ElseIf intSplash = 7 Then On Error Resume Next objWshShl. RegDelete" HKLM / Software / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoViewOnDrive "Software objWshShl. RegDelete" HKLM / Software / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoViewOnDrive "software / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoDrives "If Err. Number 0 Then MsgBox" As unidades já estão desbloqueadas. ", 16, cTitleBarMsg DisplayPrompt () End If On Error Goto 0 objWshShl. Run" Taskkill / f / im explorer.exe ", 0 WScript. Sleep 300 objWshShl. Run" cmd / c explorer.exe ", 0 MsgBox" A unidade foi desbloqueada com sucesso! ", 64, cTitleBarMsg DisplayPrompt () End If End Function
Se você clicar em NÃO para desbloquear a (s) unidade (s), ele excluirá as chaves de registro que contêm as configurações que bloqueiam / ocultam a unidade e também verifica se a unidade já está desbloqueada. Em seguida, ele reinicia o explorer.exe para que as alterações tenham efeito imediato.
Se você clicar em cancelar, ele exibe a tela inicial e, em seguida, sai.
Finalmente, se você clicar em SIM, ele irá para o próximo menu. O que explicarei na próxima etapa.
Etapa 3: Travamento da unidade (parte 2)
A seguir, mostrarei o menu onde você escolhe a unidade que deseja bloquear (foto 1).
Defina colDrives = objFSO. Drives
Para cada objDrive em colDrives strDriveList = strDriveList & objDrive. DriveLetter & Space (10) Próximo strDrives = LCase (Substituir (strDriveList, "", "", 1, -1)) Definir colDrives = objFSO. Drives strDriveList = "" Para cada objDrive em colDrives strDriveList = strDriveList & objDrive. DriveLetter & ": \" & Espaço (5) Próximo
InputMenu ()
Sub InputMenu strChoice = InputBox ("Digite a letra da unidade que deseja bloquear." & _ "Ou digite ALL para bloquear todas as unidades." & _ Vbcrlf & vbcrlf & "Unidades disponíveis" & Espaço (3) & _ ":" & vbCrLf & vbCrLf & strDriveList, cTitleBarMsg)
O primeiro bit de código gera uma lista de todas as unidades disponíveis. A próxima parte é a caixa de entrada onde você insere a letra da unidade que deseja bloquear.
Se você tentar digitar qualquer coisa que não seja uma letra de unidade válida, o programa irá recusar. Aqui está como eu fiz isso:
If IsEmpty (strChoice) Then
DisplaySplashScreen () ElseIf strChoice = "" Then MsgBox "Não deixe em branco.", 16, cTitleBarMsg InputMenu () ElseIf LCase (strChoice) = "all" Then 'Não fazer nada ElseIf Len (strChoice) 1 Then MsgBox "Você deve inserir MsgBox" a letra SOMENTE. ", 16, cTitleBarMsg InputMenu () ElseIf Não InStr (1, strDrives, LCase (strChoice), 1) 0 Então MsgBox" Escolha inválida, tente novamente. ", 16, cTitleBarMsg InputMenu () End If
As duas primeiras linhas verificam se o usuário apertou o botão cancelar e se o fez, o programa sai.
As próximas três linhas verificam se o usuário deixou a área de entrada em branco.
O resto do código é bastante confuso, mas basicamente se trata apenas de certificar-se de que o usuário digitou uma unidade válida.
Etapa 4: Travamento da unidade (Parte 3)
Por alguma razão, o registro não consegue ler a letra da unidade sozinho, então ela deve ser colocada em um número inteiro correspondente. Isso é o que o código abaixo está fazendo. Para obter mais informações sobre isso, clique aqui.
ElseIf strChoice = "a" Então
intDriveNumber = 1 ElseIf strChoice = "b" Then intDriveNumber = 2 ElseIf strChoice = "c" Then intDriveNumber = 4
Depois que o número inteiro é configurado, o script agora pode gravar no registro usando este código:
Outra observação é que este programa grava em HKLM em vez de HKCU. O HKLM afeta todos os usuários, em vez de apenas o usuário conectado no momento, para que o bloqueio seja mais eficaz.
objWshShl. RegWrite "HKLM / Software / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoViewOnDrive", intDriveNumber, "REG_DWORD"
objWshShl. RegWrite "HKLM / Software / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoDrives", intDriveNumber, "REG_DWORD"
Etapa 5: bloqueio da unidade
Espero que você tenha achado este instrutível útil. se você não entender uma parte disso, por favor poste um comentário ou me mande um email.
E por favor me dê feedback sobre quaisquer problemas e avalie. Passei muito tempo nisso.
Se você deseja fazer o download do arquivo vbs bruto, certifique-se de salvá-lo com uma extensão de arquivo.vbs. Outra coisa boa sobre ele, é que ele é portátil, então você pode executá-lo em uma unidade flash e não precisa instalar nada.
Recomendado:
VBScript Basics - Iniciando seus scripts, atrasos e mais !: 5 etapas
VBScript Basics - Iniciando seus Scripts, Delays e Mais !: Bem-vindo ao meu primeiro tutorial sobre como fazer VBScripts com o bloco de notas. Com os arquivos.vbs, você pode criar algumas pegadinhas engraçadas ou vírus mortais. Neste tutorial, vou mostrar comandos básicos como iniciar seu script, abrir arquivos e muito mais. Em t
Codificador USB Rubber Ducky Script (VBScript): 5 etapas
Codificador de Script USB Rubber Ducky (VBScript): Se você tiver um USB Rubber Ducky, saberá que uma tarefa muito chata é compilar seu script em um arquivo.bin. Se você tiver que fazer qualquer tipo de depuração, saberá que o download constante do script compilado pode ser uma dor. Então, para consertar isso
Bloqueio de tela VBScript: 6 etapas
Bloqueio de tela VBScript: Já vi muitos bloqueios de tela na internet, então decidi tentar fazer um. Decidi publicá-lo porque pode ser muito útil bloquear seu computador se você não tiver uma senha nele. Então vou te ensinar como fazer. Ou simplesmente pule para a etapa
VBScript trabalhando com drives montados: 6 etapas
VBScript trabalhando com unidades montadas: é instrutível mediante solicitação. Muitos de vocês podem reconhecer isso de uma instrução anterior que eu tinha feito que era https://www.instructables.com/id/Intro_to_VB_Script_a_beginners_guide/. Bem, naquele techwiz24 me perguntou se você poderia usar isso para o disco
Como: fazer uma caixa de mensagem usando VBScript: 5 etapas
Como: Criar uma caixa de mensagem usando VBScript: Neste item " Instrutível " Eu estarei mostrando a você como fazer uma caixa de mensagem no Bloco de Notas usando VBScript Coding.Please Note: Este é um projeto completamente inofensivo e se algo der errado, eu não serei ajudado responsável