هل تريد تغيير منفذ COM عبر التسجيل أو سطر الأوامر أو البرنامج؟

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

  •  18-09-2019
  •  | 
  •  

سؤال

هل يعرف أحد كيفية تغيير رقم منفذ COM الذي يعينه Windows لمنفذ COM الظاهري USB؟يمكنك تغيير ذلك عبر "إدارة الأجهزة" والنقر فوق الزر "خيارات متقدمة".ولكن كيف يمكنك القيام بذلك عبر واجهة برمجة التطبيقات أو تغيير التسجيل أو عملية سطر الأوامر؟

أي أفكار من فضلك؟

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

المحلول

قد تجد هذه الإجابة مفيدة:

كيف يمكنني الحصول على الاسم الودي لمنفذ COM في Windows؟

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

ومع ذلك، إذا قمت بتغيير مهمة المنفذ، فيجب عليك أيضا تحديث قاعدة بيانات منفذ COM - انظر: https://msdn.microsoft.com/en-us/library/ff546481.aspx.

عندما اضطررت إلى القيام بشيء مماثل، وجدت الجهاز المناسب باستخدام الآلية الموضحة في المقالة المرتبطة بذلك، ثم اتصلت SerialDisPlayAdvancedSettings ((HWND) NULL NULL، HDEviceInfo، & devInfodata)؛ لعرض مربع الحوار المتقدمة والسماح للنظام التشغيل باستخدام العمل الشاق.

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

نصائح أخرى

قمت بمراقبة التغييرات التسجيل أثناء تغيير منفذ COM 1 إلى 110 ووجدت التعديلات في المفاتيح التالية:

hkey_local_machine hardware devicemap serialcomm] " device serial0" = "com110"

hkey_local_machine system controlset001 control comm com اسم arbiter] "comdb" = hex (3): FC، 7F، 00،00،00،00،00،00،00،00،00،00،00،00،00،00،00،00،00،00،00،00،00 00،00،00،00،00،00،00،00،00،00،00،00،00،00،00،00،00،00

hkey_local_machine system controlset001 enum acpi pnp0501 1 portname "=" com110 "

مرتجلًا، لا أعرف كيفية القيام بذلك، ولكن إليك ما سأفعله:

استخدم طريقة My Computer/ Device Manager لتعيين بعض منافذ com غير المتوقعة، مثل 61.ثم استخدم regedit للبحث عن COM61 ​​ومعرفة ما فعله "إدارة الأجهزة".

أعلم أنني رأيت كل هذه الأشياء في السجل في مكان ما، لكن البحث السريع في قاعدة المعرفة لم يظهر الإجابات.

يتم هذا التغيير في خطوتين أقل في السجل من خلال "regedit":

  1. تغيير الاسم: في الخطوة الأولى، تحتاج إلى تغيير المفاتيح أدناه: 1.1. في "HKEY_LOCAL_MACHINE SYSTEM CurrentControlset enum XXX" أن XXX هو اسم جهازك. تحتاج إلى تتبع كل عنصر للعثور على "اسم صديق" ثم قم بتغييره كما تريد (على سبيل المثال: "منفذ USB التسلسلي (6)"). 1.2. في المفتاح السابق، مرة أخرى تحتاج إلى تتبع العنصر للعثور على "PortName" وتغييره إلى رقم المنفذ (EX: "COM6")

  2. قم بتغيير رقم المنفذ: في "HKEY_LOCAL_MACHINE SYSTEMS CORMARTCONTROLSET Control Comm Com"، يمكنك العثور على "COMDB" وهو قناع قليلا من منافذ COM المخصصة بالفعل. يجب أن تكون هذه القيمة تغييرا بناء على منافذ COM الخاصة بك. ملاحظة، يتحكم البايت الأول COM8 ~ 1، وتحكم البايت الثاني COM16 ~ 9، وتحكم البايت الثالث COM24 ~ COM17 وما إلى ذلك. قيمة = 0 تعني أن المنفذ لا يستخدم. قيمة = 1 تعني أن المنفذ مشغول.

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