Čišćenje zauzetih COM priključaka

Svaki put kada povežete novi COM uređaja ili USB uređaja (vrijedi za modem, mobilne telefone, Bluetooth, serijske USB pretvarače itd.), Windows ga otkriva putem Plug-n-Play mehanizma i dodijeli ga određenom Broj COM porta u rasponu od 1 do 255. Pri ponovnom povezivanju istih uređaja dodijeljen mu je COM port koji je prethodno rezerviran. Novi uređaji dobivaju prvi broj nezauzetog COM porta. Nije neuobičajeno da vanjski uređaji istovremeno stvore nekoliko COM portova kada su povezani (u mom slučaju nakon spajanja Bluetooth adaptera, u sustavu se odmah pojavilo 10 !!!! novih COM priključaka).

Mnoge su aplikacije (obično prilično drevne) sposobne adresirati samo dvoznamenkaste brojeve COM ulaza, odbijajući rad s COM100 i višim. U većini "pokretačkih" verzija, takvi programi ispravno rade samo na portovima sa COM1-COM9. Što učiniti ako spojeni uređaj primi veliki broj? Mogu li resetirati numeriranje rezerviranih COM ulaza i izbrisati dodijeljene portove? Pokušajmo shvatiti primjer sustava Windows 7.

sadržaj:

  • Promijenite broj COM porta za određeni uređaj
  • Ponovno postavljanje veza za COM porta kroz registar

U svojstvima opreme u pravilu nije moguće mijenjati izdan COM port na drugi, jer sustav piše da su svi "niski" COM portovi već u upotrebi (u upotrebi).

Promijenite broj COM porta za određeni uređaj

Prije svega, trebali biste pokušati ručno redefinirati broj COM porta za određeni COM uređaj. Pretpostavimo da je potreban COM port već zauzet, a želimo ga pokušati osloboditi.

  1. Pokrenite Upravitelj uređaja na ovaj način:postavi devmgr_show_nonpresent_devices = 1
    pokrenuti devmgmt.msc
  2. U izborniku konzole odaberite pogled->Pokažite skrivene uređaje.
  3. Proširite granu Portovi (Com & LPT) i na popisu pronađite uređaj kojem je dodijeljen željeni COM port (blijeda ikona znači da je dodijeljen ovaj COM port, ali trenutno ovaj uređaj nije povezan). Kliknite desnom tipkom miša na nju i odaberite Uninstall
  4. Oslobođeni COM port može se dodijeliti drugom uređaju. Pronađite uređaj u istoj grani, otvorite prozor njegovih svojstava (Nekretnine). Zatim idite na karticu luka postavke i pritisnite gumb napredan. Na padajućem popisu odaberite neiskorišteni COM port.

Gornja metoda ne oslobađa uvijek zauzet COM port. U tom slučaju morat ćete pribjeći uređivanju registra.

Ponovno postavljanje veza za COM porta kroz registar

Podaci o korištenim COM portovima pohranjuju se u ključu registra. CommDB u odjeljku HKEY_LOCAL_MACHINE \ SYSTEM \ CurrentControlSet \ Control \ COM Arbiter

  1. Otvoreni uređivač registra (regedit) i idite na navedenu podružnicu.Važno je! Toplo vam preporučujemo da prvo napravite sigurnosnu kopiju ove podružnice registra (Datoteka -> izvoz). U slučaju da nešto pođe po zlu, možete se vratiti izvornoj konfiguraciji porta..

  2. Vrijednost parametra ComDB definira popis COM portova rezerviranih u sustavu u binarnom formatu. Svaki bit određuje status odgovarajućeg porta (od 1 do 255). Na primjer, ako trebamo ostaviti rezervaciju samo za COM3, hex vrijednost ComDB bit će 04 (0000 0100)Važno je! Budite izuzetno oprezni, ni u kojem slučaju ne dodajte dodatni bajt ovom parametru, jer u protivnom sustav može početi padati na BSOD.
  3. Ako trebate potpuno resetirati sve COM vezive, promijenite vrijednost tipke ComDB u 0.primjedba. U odjeljku HKEY_LOCAL_MACHINE \ HARDWARE \ DEVICEMAP \ SERIALCOMM možete vidjeti popis COM priključaka spojenih na sustav.
  4. U podružnici HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \ Windows NT \ CurrentVersion \ Ports sadrži popis dodijeljenih COM priključaka. Svi nepotrebni portovi mogu se izbrisati (u našem primjeru ostavićemo samo COM3, a ostatak ćemo izbrisati.
  5. Isključite svu opremu i ponovno pokrenite svoje računalo.
  6. Nakon ponovnog pokretanja, uključite opremu u željenom redoslijedu (ponovno instalirajte USB u serijski pretvarač itd.). Sve otkrivene COM portove sustav automatski prepoznaje i dodijelit će im se serijski brojevi priključaka..