Мазмуну:

VBScript Drive Lock: 5 кадам
VBScript Drive Lock: 5 кадам

Video: VBScript Drive Lock: 5 кадам

Video: VBScript Drive Lock: 5 кадам
Video: Запомни эту хитрость по доработке перфораторы для ровного сверления 2024, Ноябрь
Anonim
VBScript Drive Lock
VBScript Drive Lock
VBScript Drive Lock
VBScript Drive Lock

Жаңыртуу: Бул программа азыр көрсөтүлгөн кулпуланган дисктерди жашыруу мүмкүнчүлүгүнө ээ

Колдонуучулардын компьютерин кулпулап турган экран кулпумду жасагандан кийин, мен дискти кулпулап турган диск кулпусун жасоону чечтим.

Баарыбыз кээде колдонуучуларды дисктен (айрыкча usb драйвынан) сактоону каалайбыз. Ошентип, бул программа уруксатсыз колдонуучулардын ага кирүүсүнө жол бербөө үчүн дисктин кулпусун жабат.

Менин экран кулпумдан айырмаланып, бул скрипт абдан татаал. Негизинен, эгер мен көптөгөн программаларды кошуп койгом, ошондо программага профессионалдуу сезимди берүү үчүн.

Бул программа VBScriptте жасалган. Кийинки бир нече кадамдарда мен аны кантип жасаганымды көрсөтөм.

1 -кадам: Менин программам…

Менин программам…
Менин программам…

Төмөндө менин Drive Lock жүктөп алсаңыз болот:

Бул жерде чийки VBScript файлы LINK. Сиз аягында 's'лердин бирин алып салышыңыз керек, андыктан ал' DriveLock.vbs 'же.vbs менен аяктаганча каалаган нерсеңиз.

2 -кадам: Drive кулпусун жасоо (1 -бөлүк)

Drive кулпусун жасоо (1 -бөлүк)
Drive кулпусун жасоо (1 -бөлүк)
Drive кулпусун жасоо (1 -бөлүк)
Drive кулпусун жасоо (1 -бөлүк)

Бул жерде мен сизге дисктин кулпусунун биринчи бөлүгүн көрсөтөм … Биринчи сүрөт - программаны биринчи иштеткенде пайда болгон нерсе.

Мен муну кылдым, сизде бул жерде үч вариант бар: дисктин кулпусун ачуу, дисктин кулпусун ачуу же чыгуу.

Эми мен муну кантип кылдым:

DisplayPrompt () intSplash = MsgBox ("Эмне кылгыңыз келет?" & VbCrLf & vbCrLf _ & "[Дискти кулпулоо үчүн Ооба дегенди басыңыз]" & vbCrLf _ & "[Дискти ачуу үчүн NO баскычын басыңыз] ", 35, cTitleBarMsg) Эгерде intSplash = 2 Андан кийин DisplaySplashScreen () ElseIf intSplash = 7 Андан кийин ката менен улантыңыз Кийинки objWshShl. RegDelete" HKLM / Software / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoViewOnDrete / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoDrives "Err. Number 0 болсо MsgBox" Дисктер эбак эле кулпудан чыгарылган. ", 16, cTitleBarMsg DisplayPrompt () End эгер ката кетсе 0 objWshShl. Run" Taskkill /f /im explorer.exe ", 0 WScript. Sleep 300 objWshShl. Run" cmd /c explorer.exe ", 0 MsgBox" Диск кулпусу ачылды! ", 64, cTitleBarMsg DisplayPrompt () End If Function

Эгерде сиз дисктин (лордун) кулпусун ачуу үчүн NO бассаңыз, анда дискти кулпулап/катып койгон орнотуулары бар реестр ачкычтары өчүрүлөт, ошондой эле дисктин кулпусу ачылгандыгын текшерет. Андан кийин, ал дароо күчүнө кириши үчүн explorer.exe кайра башталат.

Эгерде сиз жокко чыгаруу баскычын чыкылдатыңыз, анда ал экранды көрсөтөт жана андан кийин чыгат.

Акыры Ооба бассаңыз, ал кийинки менюга өтөт. Мен эмки кадамда түшүндүрөм.

3 -кадам: Drive кулпусун жасоо (2 -бөлүк)

Drive кулпусун жасоо (2 -бөлүк)
Drive кулпусун жасоо (2 -бөлүк)
Drive кулпусун жасоо (2 -бөлүк)
Drive кулпусун жасоо (2 -бөлүк)

Андан кийин мен менюду көрсөтөм, эгер сиз кулпулоону каалаган бакшы дискти тандасаңыз (сүрөт 1).

ColDrives = objFSO. Drives коюңуз

ColDrivesтеги ар бир objDrive үчүн strDriveList = strDriveList & objDrive. DriveLetter & Space (10) Кийинки strDrives = LCase (Replace (strDriveList, "", "", 1, -1)) ColDrives = objFSO. Drives strDriveList = "" ForDe colDrives ичинде objDrive strDriveList = strDriveList & objDrive. DriveLetter & ": \" & Space (5) Кийинки

InputMenu ()

Sub InputMenu strChoice = InputBox ("Кулпулагыңыз келген дисктин тамгасын киргизиңиз." & _ "Же болбосо бардык дисктерди кулпулоо үчүн БААРЫН териңиз." & _ Vbcrlf & vbcrlf & "Жеткиликтүү дисктер" & Space (3) & _ ":" & vbCrLf & vbCrLf & strDriveList, cTitleBarMsg)

Биринчи код бардык жеткиликтүү дисктердин тизмесин түзөт. Кийинки бөлүк - бул сиз киргиси келген дисктин тамгасын киргизгениңизде.

Эгерде сиз жарактуу диск каттан башка нерсени жазууга аракет кылсаңыз, программа андан баш тартат. Мына мен муну кантип кылдым:

Эгерде IsEmpty (strChoice) Анда

DisplaySplashScreen () ElseIf strChoice = "" Анда MsgBox "Муну бош калтырбаңыз.", 16, cTitleBarMsg InputMenu () ElseIf LCase (strChoice) = "all" Андан кийин эч нерсе кылбаңыз ElseIf Len (strChoice) 1 Андан кийин MsgBox "Сиз киришиңиз керек. кат гана. ", 16, cTitleBarMsg InputMenu () Башка болбосо InStr (1, strDrives, LCase (strChoice), 1) 0 Андан кийин MsgBox" Туура эмес тандоо, кайра аракет кылыңыз. ", 16, cTitleBarMsg InputMenu () End If

Алгачкы эки сап колдонуучу жокко чыгаруу баскычын баскандыгын жана программадан чыкканын текшерет.

Кийинки үч сап колдонуучу киргизүү аймагын бош калтырганын текшерет.

Калган коду абдан түшүнүксүз, бирок негизинен колдонуучу жарактуу дискте терилгенине ынануу.

4 -кадам: Drive кулпусун жасоо (3 -бөлүк)

Drive кулпусун жасоо (3 -бөлүк)
Drive кулпусун жасоо (3 -бөлүк)

Эмнегедир реестр диск катты жалгыз окуй албайт, андыктан аны тиешелүү бүтүн санга коюу керек. Төмөндөгү бул код эмне кылып жатат. Бул тууралуу көбүрөөк маалымат алуу үчүн бул жерди басыңыз.

ElseIf strChoice = "a" Анда

intDriveNumber = 1 ElseIf strChoice = "b" Анда intDriveNumber = 2 ElseIf strChoice = "c" Андан кийин intDriveNumber = 4

Бүтүн сан конфигурациялангандан кийин, скрипт азыр бул кодду колдонуп реестрге жаза алат:

Дагы бир эскертүү, бул программа HKCU ордуна HKLMге жазат. HKLM кулпу кыйла эффективдүү болушу үчүн, учурдагы кирген колдонуучунун ордуна бардык колдонуучуларга таасир этет.

objWshShl. RegWrite "HKLM / Программалык камсыздоо / Microsoft / Windows / CurrentVersion / Саясаттар / Explorer / NoViewOnDrive", intDriveNumber, "REG_DWORD"

objWshShl. RegWrite "HKLM / Программалык камсыздоо / Microsoft / Windows / CurrentVersion / Саясаттар / Explorer / NoDrives", intDriveNumber, "REG_DWORD"

5 -кадам: Drive Lock

Бул пайдалуу кеңешти таптыңыз деп үмүттөнөм. эгер сиз бул нерсенин бир бөлүгүн түшүнбөсөңүз, комментарий калтырыңыз же мага жазыңыз.

Жана мага кандайдыр бир көйгөйлөр боюнча пикир билдирип, баа бериңиз. Мен буга көп убакыт короттум.

Эгерде сиз чийки vbs файлын жүктөгүңүз келсе, анын.vbs файл кеңейтүүсү менен сакталганын текшериңиз. Дагы бир жакшы жери - бул көчмө болгондуктан, аны флешкадан иштете аласыз жана эч нерсени орнотуунун кажети жок.

Сунушталууда: