Turinys:
- 1 žingsnis: Mano programa…
- 2 veiksmas: sukurkite disko užraktą (1 dalis)
- 3 veiksmas: sukurkite disko užraktą (2 dalis)
- 4 veiksmas: sukurkite disko užraktą (3 dalis)
- 5 veiksmas: disko užraktas
Video: „VBScript“disko užraktas: 5 žingsniai
2024 Autorius: John Day | [email protected]. Paskutinį kartą keistas: 2024-01-30 10:45
Atnaujinimas: ši programa dabar turi galimybę paslėpti nurodytus užrakintus diskus
Sukūręs ekrano užraktą, kuris užrakina vartotojų kompiuterį, nusprendžiau priimti iššūkį sukurti disko užraktą, kuris užrakina diską.
Mes visi kartais norime, kad vartotojai nepatektų į diską (ypač USB diską). Taigi ši programa užrakins diską, kad neteisėti vartotojai negalėtų prie jo prieiti.
Skirtingai nuo mano ekrano užrakto, šis scenarijus yra gana sudėtingas. Daugiausia todėl, kad pridėjau tiek daug „if“ir „tik“, kad galėčiau profesionaliai jaustis.
Ši programa buvo sukurta naudojant „VBScript“. Kituose žingsniuose parodysiu, kaip tai padariau.
1 žingsnis: Mano programa…
Mano disko užraktą galite atsisiųsti žemiau:
Čia yra neapdorotas VBScript failas LINK. Pabaigoje turėsite pašalinti vieną iš „s“, kad jis būtų „DriveLock.vbs“arba tai, ko norite, jei jis baigiasi.vbs.
2 veiksmas: sukurkite disko užraktą (1 dalis)
Čia aš jums parodysiu pirmąją disko užrakto dalį … Pirmoji nuotrauka pasirodo pirmą kartą paleidus programą.
Aš tai padariau, kad čia būtų trys variantai: užrakinti diską, atrakinti diską (-us) arba išeiti.
Dabar štai kaip aš tai padariau:
Funkcija DisplayPrompt () intSplash = MsgBox ("Ką norėtumėte daryti?" & VbCrLf & vbCrLf _ & "[Spustelėkite TAIP, kad užrakintumėte diską]" & vbCrLf _ & "[Spustelėkite NE, kad atrakintumėte diską (-us)] ", 35, cTitleBarMsg) Jei intSplash = 2 Tada DisplaySplashScreen () ElseIf intSplash = 7 Tada į klaidą Tęsti Kitas objWshShl. RegDelete" HKLM / Software / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoViewOnDrive "objWSMS Software / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoDrives "Jei Err. Number 0 Tada MsgBox" Diskas jau atrakintas. ", 16, cTitleBarMsg DisplayPrompt () Pabaiga, jei įjungta klaida Goto 0 objWshShl. Run" Taskkill /f /im explorer.exe ", 0 WScript. Sleep 300 objWshShl. Run" cmd /c explorer.exe ", 0 MsgBox" Drive atrakinta buvo sėkminga! ", 64, cTitleBarMsg DisplayPrompt () End If End Function
Jei spustelėsite NE, kad atrakintumėte diską (-us), jis ištrins registro raktus, kuriuose yra parametrai, kurie užrakina/slepia diską, kurį jis taip pat patikrina, ar diskas jau yra atrakintas. Tada jis iš naujo paleidžia explorer.exe, kad pakeitimai įsigaliotų nedelsiant.
Jei spustelėsite „Atšaukti“, jis parodys pradinį ekraną ir išeis.
Galiausiai, jei spustelėsite TAIP, jis pereis į kitą meniu. Kurį paaiškinsiu kitame žingsnyje.
3 veiksmas: sukurkite disko užraktą (2 dalis)
Toliau parodysiu meniu, kuriame pasirinkote norimą užrakinti diską (1 pav.).
Nustatykite colDrives = objFSO. Drives
Kiekvienam objDrive colDrives strDriveList = strDriveList & objDrive. DriveLetter & Space (10) Kitas strDrives = LCase (Replace (strDriveList, "", "", 1, -1)) Nustatykite colDrives = objFSO. Drives strDriveList = "For objDrive colDrives strDriveList = strDriveList & objDrive. DriveLetter & ": \" & Space (5) Kitas
Įvesties meniu ()
Sub InputMenu strChoice = InputBox ("Įveskite disko, kurį norite užrakinti, raidę." & _ "Arba įveskite ALL, kad užrakintumėte visus diskus." & _ Vbcrlf & vbcrlf & "Galimi diskai" & Space (3) & _ ":" & vbCrLf & vbCrLf & strDriveList, cTitleBarMsg)
Pirmasis kodo bitas sukuria visų galimų diskų sąrašą. Kita dalis yra įvesties dėžutė, kurioje įvedėte disko, kurį norite užrakinti, raidę.
Jei bandysite įvesti bet ką, išskyrus galiojančią disko raidę, programa atsisakys. Štai kaip aš tai padariau:
Jei IsEmpty (strChoice) Tada
DisplaySplashScreen () ElseIf strChoice = "" Tada MsgBox "Nepalikite šio laukelio tuščio.", 16, cTitleBarMsg InputMenu () ElseIf LCase (strChoice) = "all" Tada 'Nieko nedaryti Elif Len (strChoice) 1 Tada MsgBox "Jūs turite įvesti TIK raidė. ", 16, cTitleBarMsg InputMenu () ElseIf Not InStr (1, strDrives, LCase (strChoice), 1) 0 Tada MsgBox" Netinkamas pasirinkimas, bandykite dar kartą. ", 16, cTitleBarMsg InputMenu () Pabaiga Jei
Pirmosios dvi eilutės patikrina, ar vartotojas paspaudė atšaukimo mygtuką ir ar padarė programą.
Kitos trys eilutės tikrina, ar vartotojas įvesties sritį paliko tuščią.
Likusi kodo dalis yra gana paini, tačiau iš esmės tai tik įsitikinimas, kad vartotojas įvedė tinkamą diską.
4 veiksmas: sukurkite disko užraktą (3 dalis)
Dėl tam tikrų priežasčių registras negali vien tik nuskaityti disko raidės, todėl jis turi būti įrašytas į atitinkamą sveikąjį skaičių. Tai daro šis toliau pateiktas kodas. Norėdami gauti daugiau informacijos apie tai, spustelėkite čia.
ElseIf strChoice = "a" Tada
intDriveNumber = 1 ElseIf strChoice = "b" Tada intDriveNumber = 2 ElseIf strChoice = "c" Tada intDriveNumber = 4
Kai sukonfigūruotas sveikasis skaičius, scenarijus dabar gali įrašyti į registrą naudodami šį kodą:
Kita pastaba yra ta, kad ši programa rašo HKLM, o ne HKCU. HKLM veikia visus vartotojus, o ne tik dabartinį prisijungusį vartotoją, kad užraktas būtų efektyvesnis.
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 veiksmas: disko užraktas
Tikiuosi, kad ši pamoka jums buvo naudinga. Jei dalies nesuprantate, parašykite komentarą arba parašykite man pm.
Ir prašau duoti man atsiliepimų apie bet kokias problemas ir įvertinkite. Aš tam skyriau daug laiko.
Jei norite atsisiųsti neapdorotą vbs failą, įsitikinkite, kad jis išsaugotas naudojant.vbs failo plėtinį. Kitas malonus dalykas yra tai, kad jis yra nešiojamas, todėl galite paleisti jį iš „flash drive“ir jums nieko nereikia įdiegti.
Rekomenduojamas:
RFID namų durų užraktas: 4 žingsniai
RFID namų durų užraktas: RFID durų užrakto įtaisas yra praktiškas prietaisas, kurį galite naudoti kasdieniame gyvenime. Nuskaitydami raktų kortelę galite atidaryti durų užraktą. Pakeičiau projektą šioje svetainėje: https://atceiling.blogspot.com/2017/05/arduino-rfid.html?m=1Yo
Klaviatūros servo užraktas: 5 žingsniai
Klaviatūros servo užraktas: Sveiki visi, tikiuosi, kad jums buvo gera diena. Jei ne, tikėkitės, kad galėsite šiek tiek atsigręžti į šią pamoką ir terapinę muziką. Programavimas gali būti vargas. Laimei, ši pamoka nėra vargas, todėl galbūt galėsite prisidėti
„Node Mcu“Indijos automobilių centrinis užraktas su „Rfid“ir „Blynk Timer Unlock“: 9 žingsniai
„Node Mcu“Indijos automobilių centrinis užraktas su „Rfid“ir „Blynk“laikmačio atrakinimu: šiandien jums parodysiu visiškai automatizuotą indiško stiliaus automobilį su automatiniu centriniu užraktu su „RFID tag blynk wifi“valdymu ir laiko atrakinimu. Jis taip pat turi visas įprasto centrinio užrakto savybes. Šis automobilis centrinis užraktas DARBO NESISIJUNGUS AKTYVUOTI REIKIA TINKLO UŽRAKTAI
„VBScript“ekrano užraktas: 6 žingsniai
„VBScript“ekrano užraktas: Internete mačiau daugybę ekrano užraktų, todėl nusprendžiau pabandyti jį sukurti. Aš nusprendžiau jį paskelbti, nes gali būti labai naudinga užrakinti kompiuterį, jei jame nėra slaptažodžio. Taigi aš jus išmokysiu, kaip tai padaryti. Arba tiesiog pereikite prie žingsnio
Porto užraktas: Nešiojamas užraktas: 5 žingsniai
Porto-spyna: Nešiojama spyna: Sveiki visi, taigi, kalbant apie šį projektą, norėjau sukurti tai, kas paprasta, nes tai išsprendžia paprastą problemą, be jokių užraktų jūsų CR-kioske. Dauguma žmonių pradžioje mane nurašė sakydami: ar ne paprasčiau įdiegti spynas? Tai