كيفية التعرف على العملية التي قامت بتأمين ملف في Windows

عندما تحاول حذف ملف أو مجلد قيد الاستخدام من قبل عملية ما ، يظهر مربع الحوار "ملف قيد الاستخدام" ويعرض اسم البرنامج الذي قام بتأمين الملف.

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

ابحث عن العملية التي قامت بتأمين الملف

للتحقيق في العمليات والملفات المؤمنة ، من المحتمل أن يكون Windows Sysinternals Process Explorer هو الخيار الأول الذي يتبادر إلى الذهن لمعظم المستخدمين. ومع ذلك ، هناك نوعان حلول مدمجة لعرض قائمة الملفات المفتوحة الحالية جنبًا إلى جنب مع أسماء العمليات المقابلة.

ابحث عن العملية التي قامت بتأمين ملف باستخدام:

  1. مراقب الموارد (resmon.exe)
  2. مستكشف العمليات من Microsoft Sysinternals
  3. التعامل من Microsoft Sysinternals
    • ابحث عن مقبض الملف عبر قائمة النقر بزر الماوس الأيمن
  4. أداة وحدة التحكم المضمنة Openfiles.exe
    • تمكين تعقب مؤشرات الملفات المحلية
    • اعرض الملفات المفتوحة وأسماء العمليات المقابلة
    • قطع اتصال الملفات المفتوحة من المجلدات المشتركة
  5. OpenedFiles عرض من Nirsoft.net (جهة خارجية)

1. مراقب المورد

Resource Monitor (resmon.exe) هي أداة مضمنة بها العديد من الميزات المفيدة. باستخدام Resource Monitor ، يمكنك ذلك تتبع الشبكة الحالية واستخدام الإنترنت، اعرض المقابض المرتبطة بـ ملفات مقفلة، بالإضافة إلى إدارة العمليات تمامًا كما تستخدم إدارة المهام.

للعثور على اسم العملية التي تحتوي على ملف مؤمن ، انقر فوق علامة التبويب CPU ، واكتب اسم الملف أو جزء منه في مربع النص Associated Handles.

ابحث عن العملية التي قامت بتأمين الملف

لقد غطينا Resource Monitor في وقت سابق. تحقق من هذه المقالات:

  • كيفية استخدام Resource Monitor للعثور على العملية التي قامت بتأمين الملف؟
  • ما البرنامج الذي يستخدم كل عرض النطاق الترددي للإنترنت لديك؟ استخدم Resource Monitor للعثور عليها

2. عملية المستكشف

عملية المستكشف لا يحتاج إلى مقدمة. في Process Explorer ، كل ما عليك فعله هو استخدام ميزة البحث وكتابة اسم الملف. يوضح هذا عملية الوصول إلى الملف.

ابحث عن العملية التي قامت بتأمين الملف

من عرض الجزء السفلي ، يمكنك إغلاق مقبض الملف إذا لزم الأمر.

يجب عليك تشغيل Process Explorer كمسؤول من أجل إدارة العمليات التي تعمل بشكل مرتفع. لرفع Process Explorer ، انقر فوق قائمة File → إظهار التفاصيل لجميع العمليات.

تحقق من هذه المقالات المتعلقة بـ Process Explorer:

  • كيفية حذف ملف أو مجلد عنيد غير قابل للحذف في Windows؟
  • ابحث عن البرنامج الذي يستخدم كاميرا الويب الخاصة بك حاليًا
  • كيفية البحث عن البرنامج الذي تسبب في ظهور رسالة خطأ غير معروفة؟
  • ماذا يعني فشل تعداد الكائنات في الحاوية؟

3. التعامل مع Windows Sysinternals

يتعامل هي أداة مساعدة من Microsoft Sysinternals تعرض معلومات حول المقابض المفتوحة لأي عملية في النظام. يمكنك استخدامه لمشاهدة البرامج التي تحتوي على ملف مفتوح ، أو لمشاهدة أنواع الكائنات وأسماء جميع مقابض البرنامج. المقبض يشبه إصدار سطر الأوامر من عملية المستكشف.

ملحوظة: مقبض v4.21 له ملف حشرة صغيرة حيث يُبلغ دائمًا "لم يتم العثور على مقابض مطابقة" إذا كان حرف محرك الأقراص كبيرًا. آمل أن تقوم Microsoft بإصلاحه في التحديث القادم.

من موجه أوامر المشرف نافذة ، استخدم صيغة سطر الأوامر للعثور على العملية التي يتم فيها فتح الملف:

handle.exe -a -u filename_with_path

إذا كان اسم الملف يحتوي على مسافات ، فقم بإحاطته بعلامات اقتباس مزدوجة.

مثال:

handle.exe -a -u "c: \ users \ ramesh \ desktop \ Mandate-form.pdf"
العثور على الملف الذي تم قفل العملية - معالجة sysinternals

(قد لا يعمل ذكر اسم الملف بدون المسار بالضرورة في كل المواقف. يُنصح بتضمين المسار الكامل دائمًا.)

يُظهر الإخراج اسم العملية ومعرف العملية واسم المستخدم واسم الملف المقفل (الهدف) مع المسار.

معالجة Sysinternals: وسيطات سطر الأوامر

الاستخدام: مقبض [[-a [-l]] [-u] | [-c [-y]] | [-s]] [-p |] [اسم] [-nobanner]
تفريغ جميع معلومات التعامل.
ما عليك سوى إظهار مقابض القسم ذات ملف الصفحات.
يغلق المقبض المحدد (يتم تفسيره كرقم سداسي عشري).
يجب تحديد العملية من خلال PID الخاص بها. تحذير: يمكن أن تتسبب مقابض الإغلاق في عدم استقرار التطبيق أو النظام.
لا تطالب بتأكيد المقبض القريب.
عدد الطباعة لكل نوع من أنواع المقابض المفتوحة.
-u إظهار اسم المستخدم المالك عند البحث عن مقابض.
-p مقابض التفريغ التي تنتمي إلى العملية (اسم جزئي مقبول).
اسم ابحث عن مقابض للكائنات ذات (جزء مقبول).
-نوبانر لا تقم بعرض شعار بدء التشغيل ورسالة حقوق النشر.

لن تقوم أي وسيطات بتفريغ كافة مراجع الملف.

أضف مقبض Sysinternals إلى قائمة النقر بزر الماوس الأيمن

يمكنك إضافة مقبض Sysinternals إلى قائمة النقر بزر الماوس الأيمن للملفات للعثور بسرعة على البرنامج الذي قام بتأمين الملف. لإضافته إلى قائمة السياق ، اتبع الخطوات التالية:

  1. تحميل يتعامل من موقع Microsoft Sysinternals.
  2. انسخ الملفات handle.exe & مقبض 64.exe إلى مجلد - على سبيل المثال ، د: \ الأدوات
  3. انسخ سطور التعليمات البرمجية التالية إلى "المفكرة" ، ثم احفظ الملف باسم find_handle.vbs إلى مكان دائم.
    تشغيل الأداة المساعدة Sysinternals Handle.exe مع وسيطة اسم الملف. © راميش سرينيفاسان - https://winhelponline.com/blog. تاريخ الإنشاء: 29 مارس 2008. تاريخ التحديث: 11 يونيو 2019. لجميع إصدارات Windows ، بما في ذلك Windows 10 Option Explicit. Dim objShell و WshShell و objFSO و sBaseKey و sFilename. اضبط objShell = CreateObject ("Shell. طلب") قم بتعيين WshShell = CreateObject ("WScript. الصدف") قم بتعيين objFSO = CreateObject ("برمجة. FileSystemObject ") إذا كان WScript. الحجج. Count = 0 ثم sBaseKey = "HKCU \ Software \ Classes \ * \ shell \" WshShell. RegWrite sBaseKey & "FindHandle \" ، "Find Handle" ، "REG_SZ" WshShell. RegWrite sBaseKey & "FindHandle \ command \" ، "wscript.exe" & & _ WScript. ScriptFullName & & "" & & "٪ 1" & ، "REG_SZ" آخر إذا كان objFSO.FileExists (WScript. الوسيطات (0)) = صحيح ثم sFilename = lcase (WScript. الحجج (0)) objShell. ShellExecute "cmd.exe"، "/ k d: \ tools \ handle.exe -a -u" & _ & sFilename & ""، "runas"، 1 End If. إنهاء إذا

    ملحوظة: يتم ترميز مسار Sysinternals Handle.exe بشكل ثابت مثل د: \ tools \ handle.exe في النص أعلاه. إذا كان البرنامج موجودًا على مسار مختلف ، فقم بتعديل المسار في البرنامج النصي وفقًا لذلك. بالنسبة لنظام التشغيل Windows 64 بت ، يمكنك استخدام أي منهما handle.exe أو مقبض 64.exe

  4. نقرتين متتاليتين find_handle.vbs لإضافة إدخال قائمة السياق في التسجيل. ستحتاج إلى القيام بذلك مرة واحدة فقط. ولكن إذا قمت بنقل البرنامج النصي إلى مجلد مختلف ، فستحتاج إلى النقر فوقه نقرًا مزدوجًا مرة أخرى لتحديث المسار في السجل.
  5. سترى ابحث عن المقبض الخيار عند النقر بزر الماوس الأيمن فوق ملف. سيؤدي النقر فوقه إلى تشغيل البرنامج النصي الذي يقوم بدوره بتشغيل handle.exe مع وسيطة اسم الملف للعثور على العملية التي تم فيها قفل الملف.العثور على الملف الذي تم قفل العملية - معالجة sysinternals

لإزالة ابحث عن المقبض إدخال قائمة السياق ، ابدأ تشغيل محرر التسجيل (regedit.exe) وحذف المفتاح التالي:

HKEY_CURRENT_USER \ Software \ Classes \ * \ shell \ FindHandle

4. OpenFiles.exe - أداة وحدة تحكم مضمنة

أداة مضمنة أخرى سنستخدمها هي Openfiles.exe ، وهي أداة وحدة تحكم ليست جديدة على Windows. تم تقديمه في الأصل في عام 2000 كجزء من أدوات Windows Resource Kit 2000/2003. ثم تم تضمين هذه الأداة بشكل افتراضي في نظام التشغيل Windows Vista والإصدارات الأحدث (بما في ذلك Windows 10). يعرض Openfiles قائمة الملفات المفتوحة حاليًا من المجلدات المحلية أو المشتركة ، جنبًا إلى جنب مع معرف المقبض والاسم التنفيذي للعملية. تتيح لك هذه الأداة أيضًا فصل واحد أو أكثر من الملفات التي يتم فتحها عن بُعد من مجلد مشترك.

قم بتمكين العلامة العامة "Maintain Objects List" للمرة الأولى

أولاً ، لتمكين تتبع مقابض الملفات المحلية ، تحتاج إلى تشغيل علامة "الحفاظ على قائمة الكائنات" عن طريق تشغيل الأمر التالي من موجه أوامر المسؤول.

openfiles / محلي على

سترى الرسالة التالية:

INFO: العلامة العالمية للنظام "صيانة قائمة الكائنات" ممكّنة حاليًا.

ستحتاج إلى تشغيل هذا الأمر لأول مرة فقط. ثم أعد تشغيل Windows حتى يسري التغيير.

اعرض الملفات المفتوحة وأسماء العمليات المقابلة

بعد إعادة تشغيل Windows ، من ملف موجه أوامر المشرف نافذة ، اكتب:

الملفات المفتوحة

يسرد هذا معرف الملف / المقبض ، واسم العملية وقائمة الملفات المفتوحة محليًا أو المفتوحة عن بُعد عبر نقاط المشاركة المحلية ، بتنسيق جدول.

لعرض المخرجات بتنسيق List أو CSV ، استخدم المعلمة / query.

openfiles / استعلام / قائمة FO. openfiles / استعلام / FO CSV

لنسخ الإخراج إلى الحافظة ، قم بتوجيه الإخراج إلى Clip.exe على النحو التالي. ثم الصق الإخراج في Notepad أو أي محرر آخر من اختيارك.

openfiles | مقطع
ابحث عن العملية التي قامت بتأمين الملف
openfiles / query / FO LIST | مقطع. openfiles / query / FO CSV | مقطع
ابحث عن العملية التي قامت بتأمين الملف

لمزيد من المعلومات حول نسخ إخراج موجه الأوامر إلى الحافظة أو حفظ الإخراج في ملف ، راجع المقالة كيفية نسخ نص إخراج موجه الأوامر إلى الحافظة أو الحفظ في ملف؟

لمعرفة ما إذا كان ملف معين قيد الاستخدام من قبل أحد البرامج (ومعرفة البرنامج) ، يمكنك استخدام سطر الأوامر التالي.

openfiles | findstr / ط 

مثال:

openfiles | findstr / أنا إيفل

يسرد الأمر أعلاه جميع الملفات المفتوحة التي تحتوي على كلمة "eiffel" في اسم الملف. في هذا المثال ، يحتوي Word 2016 حاليًا على قفل للملف "The Eiffel Tower.docx" (المعرف 4576).

ابحث عن العملية التي قامت بتأمين الملف

ويخبرني مربع حوار "الملف قيد الاستخدام" نفس الشيء.

ابحث عن العملية التي قامت بتأمين الملف

تم فتح قطع اتصال الملفات عن بعد من المجلد المشترك.

لقطع اتصال الملفات المفتوحة من المجلد المشترك بحيث يمكنك حذف الملف أو إعادة تسميته أو تعديل المحتويات ، استخدم ملحق /disconnect المعلمة لقطع الاتصالات إلى هذا الملف. فيما يلي خيارات سطر الأوامر.

OPENFILES / Disconnect [/ S system [/ U username [/ P [password]]] {[/ ID id] [/ A accessedby] [/ O openmode]} [/ OP openfile] الوصف: يُمكّن المسؤول من فصل الملفات والمجلدات التي تم فتحها عن بُعد من خلال ملف مجلد. قائمة المعلمات: / نظام S يحدد النظام البعيد للاتصال به. / U [المجال \] المستخدم يحدد سياق المستخدم الذي يجب أن ينفذ الأمر تحته. / P [password] تعيّن كلمة المرور لسياق المستخدم المحدد. / معرّف المعرّف يُحدد لفصل الملفات المفتوحة عن طريق معرّف الملف. يمكن استخدام حرف البدل "*". / A accessedby يحدد فصل جميع الملفات المفتوحة حسب القيمة "accessed by". يمكن استخدام حرف البدل "*". يحدد / O openmode قطع اتصال كافة الملفات المفتوحة بواسطة قيمة "openmode". القيم الصالحة هي قراءة أو كتابة أو قراءة / كتابة. يمكن استخدام حرف البدل "*". / OP openfile يحدد قطع اتصال كافة اتصالات الملفات المفتوحة التي تم إنشاؤها بواسطة اسم "فتح ملف" محدد. يمكن استخدام حرف البدل "*". /? يعرض رسالة المساعدة هذه. أمثلة: OPENFILES / قطع الاتصال /؟ فتح / قطع الاتصال / المعرف 1 فتح / قطع الاتصال / فتح اسم المستخدم / قطع الاتصال / قراءة / كتابة OPENFILES / قطع الاتصال / OP "c: \ My Documents \ somedoc.doc "/ معرف 234 OPENFILES / Disconnect / S system / U اسم المستخدم / ID 5 OPENFILES / Disconnect / S system / U username / P password /بطاقة تعريف *

يؤدي Openfiles.exe بشكل مثالي مهمة سرد جميع الملفات المفتوحة مع أسماء العمليات ، لكنه لا يمكنه قتل العمليات قسرًا. ومع ذلك ، يمكن أن تكون أداة وحدة التحكم المدمجة الممتازة هذه (ولكن تم التغاضي عنها) مفيدة عندما تريد العثور بسرعة على اسم العملية الذي يستخدم ملف ، أو لفصل ملف يتم الوصول إليه من خلال مجلد مشترك من قبل مستخدم الشبكة - دون الاعتماد على جهة خارجية المحلول.

5. OpenedFilesView

OpenedFilesView من Nirsoft يعرض قائمة بجميع الملفات المفتوحة على نظامك. لكل ملف مفتوح ، يتم عرض معلومات إضافية: قيمة المقبض ، وصول القراءة / الكتابة / الحذف ، موضع الملف ، العملية التي فتحت الملف ، والمزيد... اختياريًا ، يمكنك أيضًا إغلاق ملف واحد أو أكثر من الملفات المفتوحة ، أو إغلاق العملية التي فتحت هذه الملفات الملفات.

ابحث عن العملية التي قامت بتأمين الملف

يمكنك إغلاق عمليات الملفات المحددة أو إغلاق مقابض الملفات المحددة. يتم تمثيل رقم المقبض في قيم سداسية عشرية بينما تعرضه أداة وحدة التحكم openfiles.exe بالتنسيق العادي. تتيح لك هذه الأداة أيضًا إضافة خيار قائمة السياق للعثور بسرعة على العملية التي تستخدم ملفًا حاليًا ، عبر قائمة النقر بزر الماوس الأيمن. أعتقد أن خيار قائمة السياق / دعم سطر الأوامر هو أحد أكثر الميزات المفيدة التي يقدمها OpenedFilesView.


طلب واحد صغير: إذا أعجبك هذا المنشور ، فيرجى مشاركة هذا؟

ستساعد مشاركة واحدة "صغيرة" منك كثيرًا في نمو هذه المدونة. بعض الاقتراحات الرائعة:
  • يعلق!
  • شاركها على مدونتك المفضلة + Facebook ، Reddit
  • غردها!
لذا أشكرك كثيرًا على دعمك أيها القارئ. لن يستغرق الأمر أكثر من 10 ثوانٍ من وقتك. أزرار المشاركة موجودة أدناه. :)

ايزويكالإبلاغ عن هذا الإعلان