Taula de continguts:

Bloqueig de la unitat VBScript: 5 passos
Bloqueig de la unitat VBScript: 5 passos

Vídeo: Bloqueig de la unitat VBScript: 5 passos

Vídeo: Bloqueig de la unitat VBScript: 5 passos
Vídeo: Web Programming - Computer Science for Business Leaders 2016 2024, De novembre
Anonim
Bloqueig de la unitat VBScript
Bloqueig de la unitat VBScript
Bloqueig de la unitat VBScript
Bloqueig de la unitat VBScript

Actualització: aquest programa ara pot ocultar les unitats bloquejades especificades

Després de fer el bloqueig de pantalla que bloqueja l'ordinador dels usuaris, vaig decidir assumir el repte de fer un bloqueig de la unitat que bloqueja la unitat.

De vegades volem mantenir els usuaris fora d’una unitat (especialment una unitat USB). Per tant, aquest programa bloquejarà la unitat per evitar que usuaris no autoritzats hi puguin accedir.

A diferència del meu bloqueig de pantalla, aquest script és força complicat. Principalment perquè n’he afegit tants si és per donar al programa una sensació professional.

Aquest programa es va fer en VBScript. En els següents passos us mostraré com el vaig fer.

Pas 1: el meu programa …

El meu programa …
El meu programa …

Podeu descarregar el meu Drive Lock a continuació:

Aquí teniu el fitxer VBScript LINK. Haureu de treure una de les "s" al final, de manera que sigui "DriveLock.vbs" o el que vulgueu sempre que acabi en.vbs.

Pas 2: fer el bloqueig de la unitat (part 1)

Com es fa el bloqueig de la unitat (part 1)
Com es fa el bloqueig de la unitat (part 1)
Com es fa el bloqueig de la unitat (part 1)
Com es fa el bloqueig de la unitat (part 1)

Aquí us mostraré la primera part del bloqueig de la unitat … La primera imatge és el que apareix quan s'executa el programa per primera vegada.

Ho he fet perquè tingueu tres opcions aquí: bloquejar un disc, desbloquejar unitats o sortir.

Ara és com ho vaig fer:

Funció DisplayPrompt () intSplash = MsgBox ("Què voldríeu fer?" & VbCrLf & vbCrLf _ & "[Feu clic a SÍ per bloquejar una unitat]" & vbCrLf _ & "[Feu clic a NO per desbloquejar unitats) ", 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 "objWshShl. RegDel / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoDrives "Si Err. Number 0 llavors MsgBox" Les unitats ja estan desbloquejades ", 16, cTitleBarMsg DisplayPrompt () Finalitza si hi ha error Aneu a 0 objWshShl. Run" Taskkill / f / im explorer.exe ", 0 WScript. Sleep 300 objWshShl. Run" cmd / c explorer.exe ", 0 MsgBox" La unitat desbloquejada ha estat correcta! ", 64, cTitleBarMsg DisplayPrompt () Finalitza si finalitza la funció

Si feu clic a NO per desbloquejar les unitats, elimina les claus del registre que contenen la configuració que bloqueja / amaga la unitat, i també comprova si la unitat ja està desbloquejada. A continuació, es reinicia explorer.exe perquè els canvis tinguin efecte immediatament.

Si feu clic a Cancel·la, es mostrarà la pantalla d'inici i, a continuació, sortirà.

Finalment, si feu clic a SÍ, passa al menú següent. Cosa que explicaré al següent pas.

Pas 3: Com es fa el bloqueig de la unitat (part 2)

Com es fa el bloqueig de la unitat (part 2)
Com es fa el bloqueig de la unitat (part 2)
Com es fa el bloqueig de la unitat (part 2)
Com es fa el bloqueig de la unitat (part 2)

A continuació, us mostraré el menú on trieu la unitat de bruixa que voleu bloquejar (foto 1).

Estableix colDrives = objFSO. Drives

Per a cada objDrive a colDrives strDriveList = strDriveList & objDrive. DriveLetter & Space (10) Següent strDrives = LCase (Substitueix (strDriveList, "", "", 1, -1)) Establir colDrives = objFSO. Drives strDriveList = "" Per a cada un objDrive a colDrives strDriveList = strDriveList & objDrive. DriveLetter & ": \" & Space (5) Següent

InputMenu ()

Sub InputMenu strChoice = InputBox ("Introduïu la lletra de la unitat que vulgueu bloquejar." & _ "O escriviu TOTS per bloquejar totes les unitats." & _ Vbcrlf & vbcrlf & "Unitats disponibles" & Espai (3) & _ ":" & vbCrLf & vbCrLf & strDriveList, cTitleBarMsg)

El primer bit de codi genera una llista de totes les unitats disponibles. La següent part és la caixa d’entrada on introduïu la lletra de la unitat que voleu bloquejar.

Si proveu d’escriure qualsevol cosa menys una lletra de disc vàlida, el programa la rebutjarà. Heus aquí com he fet això:

Si IsEmpty (strChoice) Llavors

DisplaySplashScreen () ElseIf strChoice = "" Aleshores MsgBox "No deixeu això en blanc.", 16, cTitleBarMsg InputMenu () ElseIf LCase (strChoice) = "tot" Aleshores 'No fer res més Si Len (strChoice) 1 Després MsgBox "Heu d'introduir la lletra NOMÉS. ", 16, cTitleBarMsg InputMenu () ElseIf Not InStr (1, strDrives, LCase (strChoice), 1) 0 Aleshores MsgBox" Elecció no vàlida, torneu-ho a provar. ", 16, cTitleBarMsg InputMenu () Finalitza si

Les dues primeres línies comproven si l’usuari ha premut el botó de cancel·lació i si ha finalitzat el programa.

Les tres línies següents comproven si l’usuari ha deixat l’àrea d’entrada en blanc.

La resta del codi és bastant confús, però bàsicament només s’assegura que l’usuari hagi escrit una unitat vàlida.

Pas 4: bloqueig de la unitat (part 3)

Com es fa el bloqueig de la unitat (Part 3)
Com es fa el bloqueig de la unitat (Part 3)

Per alguna raó, el registre no pot llegir només la lletra de la unitat, de manera que s’ha de posar en un enter corresponent. Això és el que fa aquest codi següent. Per obtenir més informació sobre això, feu clic aquí.

ElseIf strChoice = "a" Aleshores

intDriveNumber = 1 ElseIf strChoice = "b" Llavors intDriveNumber = 2 ElseIf strChoice = "c" Aleshores intDriveNumber = 4

Un cop configurat el nombre enter, l'script ja pot escriure al registre mitjançant aquest codi:

Una altra nota és que aquest programa escriu a HKLM en lloc de HKCU. HKLM afecta tots els usuaris en lloc de només l’usuari que ha iniciat la sessió per tal que el bloqueig sigui més eficaç.

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"

Pas 5: bloqueig de la unitat

Espero que us sigui útil. si no enteneu cap part d'això, envieu un comentari o vull-me.

I, si us plau, doneu-me comentaris sobre qualsevol problema i, si us plau, califiqueu-ho. Vaig passar molt de temps en això.

Si voleu descarregar el fitxer vbs en brut, assegureu-vos que es desi amb una extensió de fitxer.vbs. Una altra cosa interessant d’això és que és portàtil perquè pugueu executar-lo des d’una unitat flash i no necessiteu instal·lar res.

Recomanat: