إصلاح: لا يمكن للعملية الوصول إلى الملف لأنه يتم استخدامه بواسطة عملية أخرى

يواجه العديد من مستخدمي Windows الخطأ "لا يمكن للعملية الوصول إلى الملف لأنه يتم استخدامه بواسطة عملية أخرى" . في معظم الأحيان ، تحدث المشكلة عندما يحاول المستخدم تشغيل أمر netsh. يقوم بعض المستخدمين بالإبلاغ عن ظهور رسالة الخطأ لهم عندما يحاولون النقر بزر الماوس الأيمن فوق موقع ويب في الأداة الإضافية IIS (خدمات معلومات الإنترنت) MMC (وحدة التحكم بالإدارة لـ Microsoft).

تم الإبلاغ عن حدوث المشكلة في أنظمة التشغيل Windows Vista و Windows 7 و Windows 8.1 و Windows 10 وعلى العديد من إصدارات Windows Server.

ما الذي يجعل العملية تستخدم من قبل عملية أخرى؟

لقد بحثنا في هذه المشكلة بالذات من خلال النظر في تقارير المستخدمين المختلفة واستراتيجيات الإصلاح التي استخدموها لحل المشكلة. بناءً على ما تمكنا من جمعه ، هناك العديد من السيناريوهات الشائعة التي ستؤدي إلى ظهور رسالة الخطأ هذه:

  • يتطلب الأمر امتيازات المسؤول - إذا كنت تواجه الخطأ داخل محطة طرفية ، فمن المحتمل أن يكون ذلك بسبب عدم امتلاكك امتيازات إدارية لإجراء التعديلات. تمكن العديد من المستخدمين في وضع مماثل من حل المشكلة من خلال منح امتيازات المسؤول.
  • هناك عملية أخرى تستخدم المنفذ 80 أو المنفذ 443 - وهذا نموذجي مع أجهزة الكمبيوتر التي تشغل IIS (خدمات معلومات الإنترنت). إذا كانت هناك عملية أخرى تستخدم هذين المنفذين ، فسترى رسالة الخطأ هذه.
  • لم يتم تكوين مفتاح التسجيل الفرعي ListenOnlyList بشكل صحيح - السيناريو الشائع الآخر مع IIS (خدمات معلومات الإنترنت) الذي سيؤدي إلى تشغيل هذا الخطأ المحدد هو مفتاح التسجيل الفرعي ListenOnlyList الذي تم تكوينه بشكل غير صحيح.

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

للحصول على أفضل النتائج ، اتبع الطرق أدناه بالترتيب حتى تصادف إصلاحًا فعالاً في حل الخطأ في السيناريو الخاص بك.

هيا نبدأ!

الطريقة الأولى: تشغيل الأمر بامتيازات المسؤول

إذا تلقيت هذا الخطأ عند محاولة تشغيل أمر netsh ، فمن المحتمل أن الخطأ يحدث لأنه ليس لديك امتيازات المسؤول. تم الإبلاغ عن حدوث ذلك أكثر من مرة عندما يحاول المستخدم تشغيل أمر يضيف استثناءات إلى نطاق المنفذ الديناميكي لتطبيقات Windows الأصلية أو تطبيقات الطرف الثالث.

ضع في اعتبارك أن عملية من هذا النوع ستتطلب امتيازات المسؤول. للتأكد من أن نافذة CMD التي تحاول تنفيذ الإجراء فيها تتمتع بامتيازات المسؤول ، اتبع الخطوات أدناه:

  1. اضغط على مفتاح Windows + R لفتح مربع حوار Run. ثم اكتب " cmd " واضغط على Ctrl + Shift + Enter لفتح موجه أوامر مرتفع.
  2. عندما يطلب منك UAC (التحكم في حساب المستخدم) ، انقر فوق " نعم" لمنح امتيازات المسؤول.
  3. في موجه الأوامر المرتفع ، قم بتشغيل الأمر مرة أخرى ومعرفة ما إذا كنت لا تزال تواجه نفس رسالة الخطأ.

إذا كنت لا تزال تحصل على الخطأ "لا يمكن للعملية الوصول إلى الملف لأنه يتم استخدامه بواسطة عملية أخرى" أو لم يكن هذا السيناريو قابلاً للتطبيق ، فانتقل إلى الطريقة التالية أدناه.

الطريقة 2: تعيين نطاق IP مختلف

إذا كنت تحاول حل تعارض DNS باستخدام netsh ولم تساعدك الطريقة المذكورة أعلاه ، فقد ترغب في تجربة نهج مختلف.

وجد العديد من المستخدمين الذين يكافحون لحل نفس رسالة الخطأ أن التعارض قد تم حله بعد أن حاولوا تعيين نطاق IP مختلف تمامًا بدلاً من إنشاء نطاق استبعاد.

يوجد أدناه بعض الأوامر التي نفذها أحد المستخدمين المتأثرين بنجاح لحل التعارض بين DNS و Quickbooks:

netsh int ipv4 set dynamicport tcp start=10000 num=1000 netsh int ipv4 set dynamicport udp start=10000 num=1000

ملاحظة: تأكد من أن الجهاز الذي تقوم بتشغيل الأمر فيه لديه امتيازات المسؤول.

إذا لم تحل هذه الطريقة التعارض أو لم تكن قابلة للتطبيق على الموقف الذي تواجهه ، فانتقل إلى الطريقة النهائية.

الطريقة الثالثة: حل تعارض منفذ IIS

إذا كنت تواجه المشكلة أثناء محاولة النقر بزر الماوس الأيمن فوق عنصر موقع ويب داخل الأداة الإضافية IIS MMC (النقر فوق ابدأ لا يفعل أي شيء) ، فستحتاج إلى استخدام الأداة المساعدة Netstat.exe لمعرفة ما إذا كانت هناك عملية أخرى باستخدام المنفذ 80 والمنفذ 443.

هذه المشكلة شائعة جدًا مع أجهزة الكمبيوتر التي تستخدم Microsoft IIS 6.0 و 7.0. استنادًا إلى وثائق Microsoft الرسمية ، ستظهر رسالة الخطأ إذا كان أحد الشروط التالية ينطبق على وضعك الحالي:

  • و ListenOnlyList لم يتم تكوين مفتاح التسجيل الفرعي بشكل صحيح على IIS تشغيل الكمبيوتر.
  • هناك عملية أخرى تستخدم منفذ TCP (80) أو منفذ SSL (443) المطلوب بواسطة IIS.

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

إليك دليل خطوة بخطوة حول كل شيء:

  1. اضغط على مفتاح Windows + R لفتح مربع حوار Run. ثم اكتب " cmd " واضغط على Ctrl + Shift + Enter لفتح موجه أوامر مرتفع. عندما يطلب منك UAC (التحكم في حساب المستخدم) ، انقر فوق " نعم" لمنح الامتيازات الإدارية.
  2. داخل موجه الأوامر غير المقيد ، قم بتشغيل الأمر التالي لبدء الأداة المساعدة Netstat.exe :
    netstat -ano
  3. بمجرد الحصول على عائد ، قم بالتمرير عبر قائمة الاتصالات النشطة وتحقق مما إذا كان يتم استخدام المنفذين 50 و 443 بشكل نشط بواسطة عملية مختلفة.

    ملاحظة: إذا تم استخدام المنافذ بشكل نشط بواسطة عملية مختلفة ، فقد تمكنت للتو من تحديد مصدر مشكلتك. في هذه الحالة ، ابحث عبر الإنترنت عن خطوات محددة حول كيفية حل تعارض المنفذ وفقًا لمعرف المنتج (PID) الخاص بالمنفذ.

  4. أغلق موجه الأوامر المرتفع لأننا لن نحتاج إلى امتيازات المسؤول للخطوات التالية.
  5. إذا لم يتم استخدام المنافذ بشكل نشط ، فاضغط على مفتاح Windows + R لفتح مربع حوار Run. ثم اكتب " regedit " واضغط على Enter لفتح محرر التسجيل . عندما يطلب منك UAC (التحكم في حساب المستخدم) ، انقر فوق " نعم" لمنح امتيازات إدارية.
  6. داخل محرر التسجيل ، استخدم الجزء الأيمن للانتقال إلى الموقع التالي:
    HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Services \ HTTP \ Parameters \ ListenOnlyList

    ملاحظة: في حالة عدم وجود المفتاح الفرعي ListenOnlyList ، فلا داعي لإنشاء واحد حيث سيتم استخدام عنوان IP من 0.0.0.0 افتراضيًا.

  7. قبل المضي قدمًا وتعديل المفتاح الفرعي ListenOnlyList ، ستحتاج إلى إيقاف خدمة HTTP التي تقوم بتشغيل IIS. لذا ضع محرر التسجيل في الخلفية حيث سنعود إليه بعد قليل.
  8. بعد ذلك ، اضغط على مفتاح Windows + R لفتح مربع حوار Run ، واكتب ' cmd ' واضغط على Enter لفتح نافذة موجه أوامر أخرى.
  9. في موجه Cmd ، قم بتشغيل الأمر التالي واضغط على Enter لإيقاف خدمة HTTP المسؤولة عن تشغيل IIS:
    صافي توقف HTTP
  10. عند سؤالك عما إذا كنت تريد متابعة هذه العملية ، اكتب "Y" واضغط على Enter لتأكيد العملية.
  11. بمجرد تعطيل خدمة HTTP ، أغلق نافذة موجه الأوامر وارجع إلى محرر التسجيل.
  12. مع تحديد المفتاح الفرعي ListenOnlyList ، انتقل إلى الجزء الأيمن وتأكد من احتوائه على عناوين IP صالحة. إذا اكتشفت عنوان IP غير صالح ، فقم بإزالته أو تعديله ليعكس إدخالًا بعنوان IP صالح.

    ملاحظة: في حالة وجود المفتاح الفرعي ListenOnlyList وكان العنوان 0.0.0.0 مدرجًا ، فأنت بحاجة إلى حذف كافة عناوين IP الأخرى.

  13. أغلق محرر التسجيل وأعد تشغيل الكمبيوتر.
  14. عند بدء التشغيل التالي ، يجب أن تبدأ خدمة HTTP تلقائيًا. ولكن فقط للتأكد ، اضغط على مفتاح Windows + R لفتح مربع حوار تشغيل آخر. ثم اكتب " cmd " واضغط على Enter لفتح نافذة موجه الأوامر.
  15. في موجه الأوامر المفتوح حديثًا ، اكتب الأمر التالي للتأكد من بدء تشغيل خدمة HTTP:
    بداية net http

    ملاحظة: إذا تلقيت رسالة تفيد بأن "الخدمة المطلوبة قد بدأت بالفعل" ، فأنت على ما يرام.

  16. محاولة بدء تشغيل خدمة من الأداة الإضافية Microsoft Internet Information Services (IIS) Microsoft Management Console (MMC). يجب ألا تواجه بعد الآن الخطأ "لا يمكن للعملية الوصول إلى الملف لأنه قيد الاستخدام بواسطة عملية أخرى" .