Съдържание:

Заключване на устройството VBScript: 5 стъпки
Заключване на устройството VBScript: 5 стъпки

Видео: Заключване на устройството VBScript: 5 стъпки

Видео: Заключване на устройството VBScript: 5 стъпки
Видео: Как удалить вирусы на Windows в два клика? 2024, Ноември
Anonim
Заключване на VBScript устройство
Заключване на VBScript устройство
Заключване на VBScript устройство
Заключване на VBScript устройство

Актуализация: Тази програма вече има възможност да скрие посочените заключени дискове

След като заключих екрана си, който заключва компютъра на потребителите, реших да се справя с предизвикателството да направя заключване на устройство, което заключва устройство.

Всички ние понякога искаме да предпазим потребителите от устройство (особено USB устройство). Така че тази програма ще заключи устройството, за да попречи на неоторизирани потребители да получат достъп до него.

За разлика от заключването на екрана, този скрипт е доста сложен. Най -вече защото добавих толкова много ако, а след това, само за да дам на програмата професионално усещане.

Тази програма е направена във VBScript. В следващите няколко стъпки ще ви покажа как я направих.

Стъпка 1: Моята програма …

Моята програма…
Моята програма…

Можете да изтеглите моя Drive Lock по -долу:

Ето необработения VBScript файл LINK. Ще трябва да премахнете един от „s“в края, така че да е „DriveLock.vbs“или каквото и да искате, стига да завършва на.vbs.

Стъпка 2: Заключване на устройството (част 1)

Заключване на устройството (част 1)
Заключване на устройството (част 1)
Заключване на устройството (част 1)
Заключване на устройството (част 1)

Тук ще ви покажа първата част от заключването на устройството … Първата снимка е това, което се появява при първото стартиране на програмата.

Направих го така, че тук имате три възможности: да заключите устройство, да отключите устройство (и) или да излезете.

Ето как го направих:

Функция DisplayPrompt () intSplash = MsgBox ("Какво бихте искали да направите?" & VbCrLf & vbCrLf _ & "[Щракнете върху ДА, за да заключите устройство]" & vbCrLf _ & "[Щракнете върху НЕ, за да отключите устройство (и)] ", 35, cTitleBarMsg) Ако intSplash = 2 След това DisplaySplashScreen () ElseIf intSplash = 7 Тогава при грешка възобновяване Следващ objWshShl. RegDelete" HKLM / Software / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoViewOnDhDEWD " / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoDrives "Ако Err. Number 0 Тогава MsgBox" Дисковете вече са отключени. ", 16, cTitleBarMsg DisplayPrompt () Край при включване Отидете на 0 objWshShl. Run" Taskill /f /im explorer.exe ", 0 WScript. Sleep 300 objWshShl. Run" cmd /c explorer.exe ", 0 MsgBox" Диск отключен беше успешен! ", 64, cTitleBarMsg DisplayPrompt () Край, ако функцията за край

Ако щракнете върху НЕ, за да отключите устройството (ите), то изтрива ключовете в системния регистър, които съдържат настройките, които заключват/скриват устройството, което също така проверява дали устройството вече е отключено. След това рестартира explorer.exe, така че промените да влязат в сила незабавно.

Ако щракнете върху отмени, той показва началния екран и след това излиза.

Накрая, ако щракнете върху ДА, ще преминете към следващото меню. Което ще обясня в следващата стъпка.

Стъпка 3: Заключване на устройството (част 2)

Заключване на устройството (част 2)
Заключване на устройството (част 2)
Заключване на устройството (част 2)
Заключване на устройството (част 2)

След това ще ви покажа менюто, когато сте избрали вещица, която искате да заключите (снимка 1).

Задайте colDrives = objFSO. Drives

За всеки objDrive в colDrives strDriveList = strDriveList & objDrive. DriveLetter & Space (10) Следващ strDrives = LCase (Replace (strDriveList, "", "", 1, -1)) Задайте colDrives = objFSO. Drives strDriveList = " objDrive в colDrives strDriveList = strDriveList & objDrive. DriveLetter & ": \" & Space (5) Напред

InputMenu ()

Sub InputMenu strChoice = InputBox ("Въведете буква на устройството, което искате да заключите." & _ "Или въведете ALL, за да заключите всички устройства." & _ Vbcrlf & vbcrlf & "Налични устройства" & Space (3) & _ ":" & vbCrLf & vbCrLf & strDriveList, cTitleBarMsg)

Първият бит код генерира списък на всички налични устройства. Следващата част е полето за въвеждане, където сте въвели буквата на устройството, което искате да заключите.

Ако се опитате да въведете нещо друго, освен валидна буква на устройството, и програмата ще го откаже. Ето как го направих:

Ако IsEmpty (strChoice) Тогава

DisplaySplashScreen () ElseIf strChoice = "" Тогава MsgBox "Не оставяйте това поле празно.", 16, cTitleBarMsg InputMenu () ElseIf LCase (strChoice) = "all" Тогава 'Не прави нищо другоIf Len (strChoice) 1 Тогава MsgBox "Трябва да въведете буквата САМО. ", 16, cTitleBarMsg InputMenu () ElseIf Not InStr (1, strDrives, LCase (strChoice), 1) 0 Тогава MsgBox" Невалиден избор, моля, опитайте отново. ", 16, cTitleBarMsg InputMenu () End If

Първите два реда проверяват дали потребителят е натиснал бутона за отмяна и дали е излязъл от програмата.

Следващите три реда проверяват дали потребителят е оставил полето за въвеждане празно.

Останалата част от кода е доста объркваща, но основно се уверява, че потребителят е въвел валидно устройство.

Стъпка 4: Заключване на устройството (част 3)

Заключване на устройството (част 3)
Заключване на устройството (част 3)

По някаква причина регистърът не може да прочете само буквата на устройството, така че трябва да бъде поставен в съответно цяло число. Това прави този код по -долу. За повече информация относно това щракнете тук.

ElseIf strChoice = "a" Тогава

intDriveNumber = 1 ElseIf strChoice = "b" Тогава intDriveNumber = 2 ElseIf strChoice = "c" Тогава intDriveNumber = 4

След като цяло число е конфигурирано, скриптът вече може да пише в системния регистър, използвайки този код:

Друга забележка е, че тази програма пише на HKLM вместо на HKCU. HKLM засяга всички потребители, а не само текущия регистриран потребител, така че заключването е по -ефективно.

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: Заключване на устройството

Надявам се да ви е била полезна тази инструкция. ако не разбирате част от това, моля, публикувайте коментар или ми пишете.

Моля, дайте ми обратна връзка за всякакви проблеми и моля, оценете. Прекарах много време в това.

Ако искате да изтеглите необработения vbs файл, просто се уверете, че е записан с разширение.vbs файл. Друго хубаво нещо в него е, че е преносим, така че можете да го стартирате от флаш устройство и не е необходимо да инсталирате нищо.

Препоръчано: