الإشارة إلى محرك بواسطة تسميته في ملفات الدُفعات لنظام Windows

في بيئة الحوسبة الديناميكية، يمكن أن تتغير أحرف المحركات بناءً على عوامل مختلفة مثل اتصالات الأجهزة وتكوينات النظام. يمكن أن تؤدي هذه المتغيرات إلى تعقيدات، خاصة عند إنشاء نصوص تعتمد على محركات محددة. هل وجدت نفسك في موقف تحتاج فيه إلى الإشارة إلى محرك قد يتغير حرفُه؟ على سبيل المثال، قد تحاول الوصول إلى محرك من أجل النسخ الاحتياطي أو التخزين بواسطة تسميته، مثل “MyLabel”. إذا حدث ذلك لك يومًا ما، فتابع القراءة لاكتشاف حل بسيط يمكّنك من تحقيق ذلك.

المشكلة مع أحرف المحركات

عند كتابة ملفات الدُفعات أو النصوص في Windows، يستخدم العديد من المطورين حرف المحرك لأداء العمليات. ومع ذلك، فإن هذه الطريقة لديها بعض العيوب:

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

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

الحل: استخدام VBScript

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

الخطوة 1: إنشاء VBScript

  1. افتح محرر نصوص (مثل Notepad).

  2. انسخ والصق الكود التالي:

    Option Explicit
    Dim num, args, objWMIService, objItem, colItems
    
    set args = WScript.Arguments
    num = args.Count
    
    if num <> 1 then
       WScript.Echo "Usage: CScript DriveFromLabel.vbs <label>"
       WScript.Quit 1
    end if
    
    Set objWMIService = GetObject("winmgmts:\\.\root\cimv2")
    Set colItems = objWMIService.ExecQuery("Select * from Win32_LogicalDisk")
    
    For Each objItem in colItems
       If strcomp(objItem.VolumeName, args.Item(0), 1) = 0 Then
          Wscript.Echo objItem.Name
       End If
    Next
    
    WScript.Quit 0
    
  3. احفظ الملف باسم DriveFromLabel.vbs.

الخطوة 2: تشغيل النص

الآن بعد أن قمت بإنشاء النص، ستحتاج إلى تشغيله باستخدام الأمر التالي:

cscript /nologo DriveFromLabel.vbs <label>
  • قم باستبدال <label> بالتسمية الفعلية للمحرك الذي ترغب في الإشارة إليه. على سبيل المثال، إذا كانت تسمية محركك “MyLabel”، فسوف تقوم بتشغيل:
cscript /nologo DriveFromLabel.vbs MyLabel

فهم النص

إليك تفصيل بسيط للمكونات الرئيسية للنص:

  • خدمة WMI: يتم استخدام خدمة Windows Management Instrumentation (WMI) للحصول على معلومات حول المحركات.
  • معالجة المعاملات: يتحقق مما إذا كان المستخدم قد قدم معامل (تسمية المحرك) وينبههم إذا لم يحدث ذلك.
  • تعداد المحركات: يمر النص عبر جميع المحركات المتاحة ويتحقق مما إذا كانت تسميات الأحجام تتطابق مع الإدخال.
  • الإخراج: إذا تم العثور على تطابق، فإنه يخرج حرف المحرك المقابل.

الخاتمة

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

في المرة القادمة التي تواجه فيها مشكلة تغييرات أحرف المحركات، تذكر هذا الحل المفيد باستخدام VBScript!