Satura rādītājs:

VBScript diskdziņa bloķēšana: 5 soļi
VBScript diskdziņa bloķēšana: 5 soļi

Video: VBScript diskdziņa bloķēšana: 5 soļi

Video: VBScript diskdziņa bloķēšana: 5 soļi
Video: Урок 1 по VBScript Синтаксис vbs сценариев 2024, Novembris
Anonim
VBScript diskdziņa bloķēšana
VBScript diskdziņa bloķēšana
VBScript diskdziņa bloķēšana
VBScript diskdziņa bloķēšana

Atjauninājums: šai programmai tagad ir iespēja slēpt norādītos bloķētos diskus

Pēc ekrāna bloķēšanas izveidošanas, kas bloķē lietotāju datoru, es nolēmu pieņemt izaicinājumu izveidot diska bloķēšanu, kas bloķē disku.

Mēs visi reizēm vēlamies nepieļaut lietotāju diskdzini (īpaši USB disku). Tātad šī programma bloķēs disku, lai novērstu neatļautu lietotāju piekļuvi tai.

Atšķirībā no mana ekrāna bloķēšanas šis skripts ir diezgan sarežģīts. Galvenokārt tāpēc, ka es pievienoju tik daudz ja un pēc tam tikai, lai dotu programmai profesionālu noskaņu.

Šī programma tika izveidota VBScript. Nākamajos soļos es parādīšu, kā es to izveidoju.

1. darbība: mana programma…

Mana programma…
Mana programma…

Tālāk varat lejupielādēt manu diska bloķēšanu:

Šeit ir neapstrādāts VBScript fails LINK. Beigās jums būs jānoņem viens no “s”, lai tas būtu “DriveLock.vbs” vai tas, ko vēlaties, ja vien tas beidzas ar.vbs.

2. darbība. Diska bloķēšanas izveide (1. daļa)

Diska bloķēšanas izveide (1. daļa)
Diska bloķēšanas izveide (1. daļa)
Diska bloķēšanas izveide (1. daļa)
Diska bloķēšanas izveide (1. daļa)

Šeit es parādīšu diska bloķēšanas pirmo daļu … Pirmais attēls ir tas, kas parādās, kad pirmo reizi palaižat programmu.

Es to izveidoju, lai jums būtu trīs iespējas - bloķēt disku, atbloķēt disku (-us) vai iziet.

Tagad, lūk, kā es to izdarīju:

Funkcija DisplayPrompt () intSplash = MsgBox ("Ko jūs vēlētos darīt?" & VbCrLf & vbCrLf _ & "[Noklikšķiniet uz JĀ, lai bloķētu disku]" & vbCrLf _ & "[Noklikšķiniet uz NĒ, lai atbloķētu disku (-s)] ", 35, cTitleBarMsg) Ja intSplash = 2 Tad DisplaySplashScreen () ElseIf intSplash = 7 Tad pēc kļūdas Atsākt nākamo objWshShl. RegDelete" HKLM / Software / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoViewOnDrive "objWSMS Software. / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoDrives "Ja Err. Number 0 Tad MsgBox" Diski jau ir atbloķēti. ", 16, cTitleBarMsg DisplayPrompt () Beigt, ja ir kļūda Goto 0 objWshShl. Run" Taskkill /f /im explorer.exe ", 0 WScript. Sleep 300 objWshShl. Run" cmd /c explorer.exe ", 0 MsgBox" Disks atbloķēts bija veiksmīgs! ", 64, cTitleBarMsg DisplayPrompt () Beigt, ja beigu funkcija

Ja noklikšķināt uz NĒ, lai atbloķētu disku (-us), tas izdzēsīs reģistra atslēgas, kurās ir iestatījumi, kas bloķē/slēpj disku, kuru tas arī pārbauda, lai noskaidrotu, vai disks jau ir atbloķēts. Pēc tam tā restartē explorer.exe, lai izmaiņas stātos spēkā nekavējoties.

Ja noklikšķināt uz Atcelt, tiek parādīts ekrāns un pēc tam tiek aizvērts.

Visbeidzot, noklikšķinot uz JĀ, tiek atvērta nākamā izvēlne. Ko es paskaidrošu nākamajā solī.

3. darbība. Diska bloķēšanas izveide (2. daļa)

Diska bloķēšanas izveide (2. daļa)
Diska bloķēšanas izveide (2. daļa)
Diska bloķēšanas izveide (2. daļa)
Diska bloķēšanas izveide (2. daļa)

Tālāk es parādīšu izvēlni, kurā izvēlējāties raganu piedziņu, kuru vēlaties bloķēt (1. attēls).

Iestatiet colDrives = objFSO. Drives

Katram objDrive colDrives strDriveList = strDriveList & objDrive. DriveLetter & Space (10) Nākamie strDrives = LCase (Replace (strDriveList, "", "", 1, -1)) Set colDrives = objFSO. Drives strDriveList = "For objDrive colDrives strDriveList = strDriveList & objDrive. DriveLetter & ": \" & Space (5) Nākamais

Ievades izvēlne ()

Sub InputMenu strChoice = InputBox ("Ievadiet diska burtu, kuru vēlaties bloķēt." & _ "Vai ierakstiet ALL, lai bloķētu visus diskus." & _ Vbcrlf & vbcrlf & "Pieejamie diskdziņi" & Space (3) & _ ":" & vbCrLf & vbCrLf & strDriveList, cTitleBarMsg)

Pirmais koda bits ģenerē visu pieejamo disku sarakstu. Nākamā daļa ir ievades lodziņš, kurā ievadījāt diska burtu, kuru vēlaties bloķēt.

Ja mēģināt ierakstīt neko citu kā derīgu diska burtu, programma atteiksies. Lūk, kā es to izdarīju:

Ja IsEmpty (strChoice) Tad

DisplaySplashScreen () ElseIf strChoice = "" Tad MsgBox "Neatstājiet šo lauku tukšu.", 16, cTitleBarMsg InputMenu () ElseIf LCase (strChoice) = "all" Tad 'Neko nedarīt citādiJa Len (strChoice) 1 Tad MsgBox "Jums jāievada TIKAI burts. ", 16, cTitleBarMsg InputMenu () ElseIf Not InStr (1, strDrives, LCase (strChoice), 1) 0 Tad MsgBox" Nederīga izvēle, lūdzu, mēģiniet vēlreiz. ", 16, cTitleBarMsg InputMenu () Beigas Ja

Pirmās divas rindas pārbauda, vai lietotājs nav nospiedis atcelšanas pogu un vai viņš izgāja no programmas.

Nākamās trīs rindas pārbauda, vai lietotājs nav atstājis ievades apgabalu tukšu.

Pārējais kods ir diezgan mulsinošs, taču būtībā tas tikai nodrošina, ka lietotājs ir ierakstījis derīgu disku.

4. darbība: piedziņas bloķēšanas izveide (3. daļa)

Piedziņas bloķēšanas izveide (3. daļa)
Piedziņas bloķēšanas izveide (3. daļa)

Kādu iemeslu dēļ reģistrs nevar nolasīt diska burtu viens pats, tāpēc tas ir jāievieto atbilstošā veselā skaitlī. To dara šis zemāk esošais kods. Lai iegūtu vairāk informācijas par šo, noklikšķiniet šeit.

ElseIf strChoice = "a" Tad

intDriveNumber = 1 ElseIf strChoice = "b" Tad intDriveNumber = 2 ElseIf strChoice = "c" Tad intDriveNumber = 4

Kad vesels skaitlis ir konfigurēts, skripts tagad var rakstīt reģistrā, izmantojot šo kodu:

Vēl viena piezīme ir tā, ka šī programma raksta HKLM, nevis HKCU. Lai bloķēšana būtu efektīvāka, HKLM ietekmē visus lietotājus, nevis tikai pašreizējo pieteikto lietotāju.

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"

5. darbība. Diska bloķēšana

Es ceru, ka jums noderēja šī pamācība. ja jūs nesaprotat daļu no tā, lūdzu, ievietojiet komentāru vai rakstiet man pm.

Lūdzu, sniedziet man atsauksmes par visām problēmām un, lūdzu, novērtējiet. Es tam veltīju daudz laika.

Ja vēlaties lejupielādēt neapstrādātu vbs failu, vienkārši pārliecinieties, vai tas ir saglabāts ar.vbs faila paplašinājumu. Vēl viena jauka lieta ir tā, ka tā ir pārnēsājama, lai jūs varētu to palaist no zibatmiņas diska un jums nekas nav jāinstalē.

Ieteicams: