ใน Windows ไม่มีวิธีดั้งเดิมที่ได้รับการสนับสนุนในการบล็อกกระบวนการบางอย่างจากการเข้าถึงไดรฟ์บางตัวซึ่งไป "กับลักษณะปัจจุบัน" ว่าระบบปฏิบัติการจัดการการเข้าถึงไดรฟ์ได้อย่างไร
สิทธิ์ในการเข้าถึงถูกกำหนดโดยสิทธิ์ของผู้ใช้ที่เข้าสู่ระบบซึ่งเริ่มต้นแอปพลิเคชัน ดังนั้นหากนักพัฒนาซอฟต์แวร์ตัดสินใจซอฟต์แวร์ของเขาควรค้นหาไดรฟ์ที่เข้าถึงได้ทั้งหมดและไม่ได้ให้ตัวเลือกในการปิด ... ดีนั่นคือการเขียนโปรแกรมที่ไม่ดีซึ่งไม่คำนึงถึงกรณีการใช้งานของคุณโดยเฉพาะ แต่มีวิธีแก้ไขปัญหาเล็กน้อย
โซลูชัน "แน่ใจ" เพียงอย่างเดียวคือ 2 เนื่องจากเลเยอร์การจำลองเสมือนสำหรับฮาร์ดแวร์ (จากเครื่องเสมือน) สามารถบล็อกแอปพลิเคชันใด ๆ เพื่อพยายามเข้าถึง "ฮาร์ดแวร์จริง" อย่างสมบูรณ์ แม้ว่าฉันจะไม่ได้มีกรณีที่วิธีแก้ปัญหา 1 ไม่ทำงาน แต่ในทางทฤษฎีฉันคิดว่ามันสามารถข้ามได้
ตัวเลือก "1" - ปิดการใช้งานไดรฟ์ที่ "ระดับต่ำ" - ไม่จำเป็นต้องใช้ซอฟต์แวร์เพิ่มเติม
ตัวเลือก 1a
เป็นไปได้ที่จะปิดการใช้งานไดรฟ์ข้อมูลในเลเยอร์ที่ต่ำกว่าโดยการปิดการใช้งานไดรฟ์ทั้งหมด แต่จะปิดการใช้งานไดรฟ์ทั้งหมดในไดรฟ์ คุณสามารถทำได้ด้วยตนเองโดยเริ่มdiskmgmt.msc
จากนั้นคลิกขวาที่ไดรฟ์และทำเครื่องหมายเป็น "ออฟไลน์"
หากจำเป็นคุณควรจะสามารถใช้สคริปต์บรรทัดคำสั่งได้เช่นกัน มันจะถูกนำไปใช้ในลักษณะเดียวกันกับตัวเลือก 3a / b คุณสามารถทำเช่นนั้นเช่นผ่าน cmd ตามที่อธิบายไว้ที่นี่หรือผ่านทาง PowerShell ขณะที่มันถูกอธิบายไว้ที่นี่
ตัวเลือก 1b
คุณสามารถปิดการใช้งานไดรฟ์เวอร์ทั้งหมดได้ ในการทำด้วยตนเอง: เริ่มdiskmgmt.msc
จากนั้นคลิกขวาเลือก "ตัวเลือก" จากนั้นไปที่ "ไดรเวอร์" -Tab และเลือก "ปิดใช้งาน" ไดรฟ์จะ "หายไป" ในตัวจัดการดิสก์และจะไม่สามารถเข้าถึงได้ผ่านระบบปฏิบัติการอีกต่อไป ยกเว้นว่าซอฟต์แวร์ไม่ได้ใช้คำสั่งรหัสเครื่องเพื่อสื่อสารโดยตรงกับฮาร์ดแวร์ไม่ควรใช้แอปพลิเคชันเข้าถึงไดรฟ์ อย่างน้อยที่สุดเท่าที่ความรู้ของฉันของอินและลึกหนาบางสำหรับระบบปฏิบัติการไป
หากจำเป็นคุณควรจะสามารถใช้สคริปต์บรรทัดคำสั่งได้เช่นกัน มันจะถูกนำมาใช้เป็นวิธีที่คล้ายกันเป็นตัวเลือก 3a / b Devcon.exe
ใช้ตัวอย่างเช่น คุณสามารถหาคำอธิบายรายละเอียดที่นี่
ตัวเลือกที่ 2 - การใช้สภาพแวดล้อมเสมือนจริง (ส่วนใหญ่ใช้ซอฟต์แวร์บุคคลที่สาม)
หากการเรียกใช้แอปพลิเคชันภายในสภาพแวดล้อมเสมือนจริงเป็นตัวเลือกเลยมีวิธีแก้ไขปัญหามากมายดังนี้:
ขึ้นอยู่กับรุ่น Windows ของคุณ (จำเป็นต้องใช้ Win7 ขึ้นไป) และสิทธิ์ใช้งาน ("Professional" ต้องการ, "Home" จะไม่ทำ) คุณสามารถใช้ Hyper-V เพื่อตั้งค่าสภาพแวดล้อมเสมือนจริงโดยไม่ต้องใช้ซอฟต์แวร์ของ บริษัท อื่น
คุณสามารถใช้ซอฟต์แวร์บุคคลที่สามเพื่อตั้งค่าระบบเสมือนเช่น VMplayer, Virtual Box เป็นต้นมีตัวเลือกฟรีแวร์และ payware มากมาย เมื่อใช้โซลูชันนี้คุณจะต้องมีลิขสิทธิ์ที่สองสำหรับ Windows (หรือปล่อยให้ไม่มีใบอนุญาต แต่จะได้รับการซ้อนทับที่มุมล่างขวาของหน้าจอที่จะบอกให้คุณลงทะเบียน Windows) นี่จะเป็นการป้องกันไม่ให้ซอฟต์แวร์เข้าถึงไดรฟ์ได้
คุณสามารถใช้แอปพลิเคชั่น "แซนด์บ็อกซ์" แต่มันจะขึ้นอยู่กับระดับของการทำให้เป็นไวรัสที่แอปพลิเคชัน Sandbox เสนอให้ ในบางกรณีสามารถแก้ปัญหาได้ ในกรณีอื่น ๆ มันไม่ ตัวอย่างเช่น Sandboxie (หนึ่ง harrymc อธิบายในคำตอบของเขา ) ไม่ได้แก้ปัญหาด้วยการกำหนดค่า harrymc อธิบายไว้ในคำตอบ (เดิม) ของเขา แม้ว่าซอฟต์แวร์อาจบล็อกการเข้าถึงไดรฟ์จะยังคงขึ้น ทางเลือกอื่นคือใช้แอปพลิเคชั่นแซนด์บ็อกซ์อื่นเช่น Cameyo เป็นต้น
โดยวิธีการที่นี่เป็นบทความที่ดีสำหรับความแตกต่างที่สำคัญระหว่าง virtualization ซอฟต์แวร์ที่แตกต่างกันโดยเฉพาะอย่างยิ่งความแตกต่างระหว่าง "ทั้ง" เครื่องเสมือน (เช่นเสมือนกล่อง) หรือ "กึ่งเสมือน" การใช้งาน (เช่น Sandboxie)
ตัวเลือกที่ 3 - ยกเลิกการเมานต์ปริมาณเพียง (ปล่อยให้ไดรฟ์ "ไม่บุบสลาย") - ไม่จำเป็นต้องใช้ซอฟต์แวร์เพิ่มเติม แต่มันอาจไม่ทำงานในกรณีของคุณ
ตัวเลือก 3a
แทนที่จะเริ่มต้นแอปพลิเคชันด้วยทางลัดปกติคุณสามารถเขียนไฟล์แบตช์โดยใช้คำสั่งmountvol
ที่ unmount ปริมาณที่ไม่ได้ใช้ก่อนจากนั้นจึงเริ่มแอปพลิเคชันจากนั้นจึงเมานไดรฟ์ใหม่อีกครั้ง ติดตั้ง / กระบวนการ unmounting ผ่านบรรทัดคำสั่งอธิบายไว้ที่นี่และที่นี่ นอกจากนี้คุณยังสามารถใช้diskpart
ตามที่อธิบายไว้ที่นี่และที่นี่
ตัวเลือก 3b
หรือคุณสามารถปล่อยให้ไดรฟ์นั้นไม่ต้องเมานท์โดยทั่วไปและทำการเมานต์ผ่านไฟล์แบตช์ที่เมาท์ไดรฟ์ที่คุณเริ่มด้วยตนเองเมื่อจำเป็น หลังจากใช้งานเสร็จแล้วคุณสามารถยกเลิกการต่อเชื่อมได้ด้วยตนเองโดยใช้ไฟล์แบตช์ที่สอง คุณสามารถทำให้เป็นอัตโนมัติได้โดยการตรวจสอบการร้องขอการเข้าถึงระบบไฟล์และเมานต์ / เลิกเมานท์ไดรฟ์ตามที่จำเป็นโดยปฏิบัติตามกฎบางอย่างเช่นแอปพลิเคชันบางอย่างจะไม่สามารถเข้าถึงได้ แต่ฉันไม่แน่ใจว่าระบบอัตโนมัติเป็นสิ่งที่ควรค่าแก่การพยายามอย่างยิ่งยวด
ตัวเลือก 4 - การ จำกัด การเข้าถึงไดรฟ์ตัวอักษร (ระดับเสียง) ทำได้ง่าย แต่ต้องการเครื่องมือขนาดเล็กสองชิ้นจาก Microsoft - แต่มันอาจไม่ทำงานในกรณีของคุณ
ถ้าคุณต้องการที่จะทำโดยไม่มีซอฟต์แวร์ของบุคคลที่สาม แต่ไม่ต้องกังวลที่จะใช้เครื่องมือขนาดเล็กสองตัวจาก Microsoft (ถ้าคุณไม่ได้ใช้งานแล้ว) ฉันชอบโซลูชันนี้เพราะได้รับปัญหา "ตามรูต" (การแยกความแตกต่างระหว่างสิทธิ์ของผู้ใช้และสิทธิ์ของแอปพลิเคชัน) และมันค่อนข้างง่ายและไม่จำเป็นต้องใช้ซอฟต์แวร์บุคคลที่สาม "ใหญ่"
โดยทั่วไปคุณเพิ่มผู้ใช้ที่ไม่สามารถเข้าถึงไดรฟ์จากนั้นคุณเริ่มโปรแกรมด้วยสิทธิ์ที่ จำกัด เหล่านั้น (คุณจะยังเข้าสู่ระบบในฐานะผู้ใช้ปกติของคุณคุณจะไม่ใช้บัญชีที่ถูก จำกัด เพื่อเข้าสู่ระบบ)
เพิ่มบัญชีผู้ใช้
จำกัด การเข้าถึงบัญชีผู้ใช้ใหม่ของไดรฟ์โดยใช้ Windows Access Control สำหรับระบบไฟล์ นี่คือวิธีการที่ดีรวมถึงภาพหน้าจอ
จากนั้นเริ่มซอฟต์แวร์ด้วยสิทธิ์เหล่านั้น คุณสามารถยกตัวอย่างเช่นใช้ PsExec.exe จะทำอย่างนั้นหรือ Process Explorer, นี่เป็นวิธีที่ หนึ่งในสองที่คุณจะต้องดาวน์โหลดจากเว็บไซต์ Microsoft หากคุณยังไม่มี