كيفية العثور على وإغلاق جميع مقابض الملفات المفتوحة على محرك أقراص قابل للإزالة (قبل إخراج)

StackOverflow https://stackoverflow.com/questions/1862028

سؤال

أحاول إخراج محرك الأقراص القابل للإزالة (الظاهري)، ويفشل لأن هناك بعض مقابض الملفات مفتوحة، وربما إكسبلورر ويندوز. ما هي أفضل طريقة للحصول على جميع المقابض المفتوحة إلى الملفات الموجودة على محرك الأقراص هذا وأغلقها؟

هل من الممكن أيضا (ضمن وضع المستخدم) العثور على أي عمليات تنفد من محرك الأقراص، حتى أتمكن من تحذير المستخدم باسم العملية؟

من الناحية المثالية، أود القيام بذلك ضمن تطبيق وضع المستخدم بدلا من طلب امتيازات المسؤول.

أنا أستخدم VC ++ في Visual Studio 2005، في تطبيق MFC، ولكن عينات بأي لغة سيكون موضع ترحيب!

هل كانت مفيدة؟

المحلول

ال عملية المستكشف يمكن للأداة المساعدة البحث عن مقابض مفتوحة، لكنني لا أعرف ما إذا كان يمكن القيام بذلك دون امتيازات مرتفعة. من ما كنت قادرا على جمعه، فإن هذا يستخدم API "عدادات الأداء".

أعتقد أن هذه المقالة تفعل ما تحتاجه، وتعداد العمليات قيد التشغيل، وتعداد مقابض لكل منها، ابحث عن مقبض ملف يشير إلى مسار على محرك الأقراص المعني:

كيفية تعداد معالجة العملية؟

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top