Სარჩევი:

VBScript Drive Lock: 5 ნაბიჯი
VBScript Drive Lock: 5 ნაბიჯი

ვიდეო: VBScript Drive Lock: 5 ნაბიჯი

ვიდეო: VBScript Drive Lock: 5 ნაბიჯი
ვიდეო: არ ამოიღოთ ბატარეა მანქანიდან. Სწორად გააკეთე! 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: წამყვანი საკეტის დამზადება (ნაწილი 1)

Drive Drive Lock (ნაწილი 1)
Drive Drive Lock (ნაწილი 1)
Drive Drive Lock (ნაწილი 1)
Drive Drive Lock (ნაწილი 1)

აქ მე გაჩვენებთ დისკის დაბლოკვის პირველ ნაწილს … პირველი სურათი არის ის, რაც გამოჩნდება პროგრამის პირველად გაშვებისას.

მე ასე გავაკეთე, ასე რომ თქვენ გაქვთ სამი ვარიანტი აქ, დისკის ჩაკეტვა, დისკის (ების) განბლოკვა ან გასვლა.

ახლა აი როგორ გავაკეთე ეს:

ფუნქცია DisplayPrompt () intSplash = MsgBox ("რისი გაკეთება გსურთ?" & VbCrLf & vbCrLf _ & "[დააწკაპუნეთ YES დისკის დასაბლოკად]" & vbCrLf _ & "[დააწკაპუნეთ არა დისკის (ებ) ის განსაბლოკად] ", 35, cTitleBarMsg) If intSplash = 2 მაშინ DisplaySplashScreen () ElseIf intSplash = 7 შემდეგ შეცდომის განახლების შემდეგ objWshShl. RegDelete" HKLM / Software / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoViewOnDrive / " / Microsoft / Windows / CurrentVersion / Policies / Explorer / NoDrives "თუ Err. Number 0 მაშინ MsgBox" დრაივები უკვე განბლოკილია. ", 16, cTitleBarMsg DisplayPrompt () დაასრულეთ თუ შეცდომა მე მივიღე 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 End Function

თუ თქვენ დააწკაპუნებთ NO- ს დისკის (ების) განსაბლოკად, ის წაშლის რეესტრის გასაღებებს, რომელიც შეიცავს პარამეტრებს, რომლებიც ბლოკავს/მალავს დისკს, ის ასევე ამოწმებს, რომ დისკი უკვე გახსნილია. შემდეგ ის გადატვირთავს explorer.exe- ს, რათა ცვლილებები დაუყოვნებლივ ამოქმედდეს.

თუ დააწკაპუნებთ გაუქმებაზე, ის აჩვენებს splash ეკრანს და შემდეგ გამოდის.

დაბოლოს, თუ დააწკაპუნებთ YES– ზე, ის გადადის შემდეგ მენიუში. რასაც შემდეგ ეტაპზე ავხსნი.

ნაბიჯი 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 in colDrives strDriveList = strDriveList & objDrive. DriveLetter & ": \" & სივრცე (5) შემდეგი

შეყვანის მენიუ ()

Sub InputMenu strChoice = InputBox ("შეიყვანეთ დისკის ასო, რომლის ჩაკეტვაც გსურთ." & _ "ან ჩაწერეთ ALL, რომ დაიხუროს ყველა დისკი." & _ Vbcrlf & vbcrlf & "Available drives" & Space (3) & _ ":" & vbCrLf & vbCrLf & strDriveList, cTitleBarMsg)

კოდის პირველი ნაწილი ქმნის ყველა არსებული დისკის სიას. შემდეგი ნაწილი არის შეყვანის ყუთი, თუ შეიყვანეთ დისკის ასო, რომლის ჩაკეტვაც გსურთ.

თუ თქვენ ცდილობთ ჩაწეროთ სხვა არაფერი, თუ არა დისკის მოქმედი ასო, და პროგრამა უარს იტყვის მასზე. აი, როგორ გავაკეთე ეს:

თუ IsEmpty (strChoice) მაშინ

DisplaySplashScreen () ElseIf strChoice = "" მაშინ MsgBox "არ დატოვოთ ეს ცარიელი.", 16, cTitleBarMsg InputMenu () ElseIf LCase (strChoice) = "ყველა" მაშინ "არაფერი გააკეთო სხვაგან თუ ლენ (strChoice) 1 მაშინ უნდა შეიყვანო MsgBox" წერილი მხოლოდ"

პირველი ორი სტრიქონი ამოწმებს თუ არა მომხმარებელმა დააჭირეთ ღილაკს გაუქმება და გააკეთეს თუ არა პროგრამამ გასვლა.

მომდევნო სამი ხაზი ამოწმებს თუ არა მომხმარებელმა ცარიელი დატოვა შეყვანის ადგილი.

დანარჩენი კოდი საკმაოდ დამაბნეველია, მაგრამ ის ძირითადად დარწმუნებულია იმაში, რომ მომხმარებელმა აკრიფა მოქმედი დისკი.

ნაბიჯი 4: დრაივის ჩაკეტვის გაკეთება (ნაწილი 3)

დრაივის ჩაკეტვა (ნაწილი 3)
დრაივის ჩაკეტვა (ნაწილი 3)

რატომღაც რეესტრს არ შეუძლია წაიკითხოს დისკის ასო მარტო, ამიტომ ის უნდა შეიყვანოს შესაბამის რიცხვში. ეს არის ის, რასაც ქვემოთ მოყვანილი კოდი აკეთებს. ამის შესახებ დამატებითი ინფორმაციისათვის დააწკაპუნეთ აქ.

სხვა თუ strChoice = "a" მაშინ

intDriveNumber = 1 სხვა თუ 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: Drive Lock

ვიმედოვნებ, რომ ეს სასწავლო ინსტრუქცია თქვენთვის სასარგებლო აღმოჩნდა. თუ თქვენ არ გესმით ამის ნაწილი, გთხოვთ გამოაქვეყნოთ კომენტარი ან მომწეროთ.

და გთხოვთ, გამომეხმაუროთ ნებისმიერ პრობლემასთან დაკავშირებით და გთხოვთ შეაფასოთ. ამაზე ბევრი დრო გავატარე.

თუ გსურთ ჩამოტვირთოთ ნედლეული vbs ფაილი, უბრალოდ დარწმუნდით, რომ ის შენახულია.vbs ფაილის გაფართოებით. კიდევ ერთი სასიამოვნო რამ არის ის, რომ ის არის პორტატული, ასე რომ თქვენ შეგიძლიათ გაუშვათ იგი ფლეშ დრაივიდან და არაფრის დაყენება არ გჭირდებათ.

გირჩევთ: