tôi đang viết một ứng dụng truyền nhận qua cổng COM trên delphi. Tôi muốn làm một cái list box liệt kê các cổng COM tồn tại trên máy tính và tình trạng của nó (có rảnh không hay là đã bị một thằng khác chiếm rồi). Bạn nào có thể giúp tôi không?
làm sao biết trên máy có mấy cổng COM??
Collapse
X
-
Cách 1 : Start -> Setting -> control panel -> system -> hardware -> device manager -> portNguyên văn bởi plain Xem bài viếttôi đang viết một ứng dụng truyền nhận qua cổng COM trên delphi. Tôi muốn làm một cái list box liệt kê các cổng COM tồn tại trên máy tính và tình trạng của nó (có rảnh không hay là đã bị một thằng khác chiếm rồi). Bạn nào có thể giúp tôi không?
Cách 2 : click chuột phải trên biểu tượng My computer trên desktop -> properties -> hardware -> device manager -> port
Goodluck.--->
-
bác có cách nào để chương trìnhn tự động làm việc này cho mình không? ý tôi là thay vì bạn phải tự vào device manager kiểm tra rồi mới viết viết chương trình thì có cách nào để chương trình tự kiểm tra không?
Giống như chương trình Terminal của bác phamthaihoa gửi ấy. Tôi chạy chương trình này trên máy có 1 cổng COM1 => chỉ có radio COM1 được enable, chạy chương trình trên máy có 2 cổng COM => COM1 & COM2 enable. Chạy chương trình trên máy có 2 cổng COM nhưng cổng COM1 đã bị ứng dụng khác chiếm => chỉ có COM2 enable.
Rất mong các bác chỉ giáo. Tôi xin cảm ơn nhìu nhìu.
Comment
-
tôi mới tìm thấy cái này. tiếc là vẫn chưa thực hiện việc kiểm tra tình trạng của cổng được.
Code:with TRegistry.create do try rootkey:=HKEY_LOCAL_MACHINE; if keyexists('HARDWARE') then if openkey('HARDWARE',false)then if keyexists('DEVICEMAP') then if openkey('DEVICEMAP',false)then if keyexists('SERIALCOMM') then if openkey('SERIALCOMM',false)then begin GetValueNames(cmbPort.Items); for i := 0 to cmbPort.Items.Count - 1 do cmbPort.items[i] := ReadString(cmbPort.Items[i]); end finally free; end;
Comment
-
Nếu tớ nhớ không nhầm thì delphi có cú pháp dạngNguyên văn bởi plain Xem bài viếttôi đang viết một ứng dụng truyền nhận qua cổng COM trên delphi. Tôi muốn làm một cái list box liệt kê các cổng COM tồn tại trên máy tính và tình trạng của nó (có rảnh không hay là đã bị một thằng khác chiếm rồi). Bạn nào có thể giúp tôi không?
Try
...
Catch
...
end try
Bạn dùng có pháp này để mở lần lượt từng cổng COM. Nếu mở được tức là nó tồn tại và còn rỗi. Còn ngược lại là bận thôi.
Comment
-
Để biết PC có mấy cổng COM , ta có thể Theo Giải thuật này (mình dùng VISUAL BASIC- nên không biết có Ích không ,nhưng POST lên , hy vọng có chút ích về GIẢI THUẬT) .
Ở đây ,mình chọn tối đa là có 4 cổng COM , sau khi KIỂM TRA ,sẽ biết được mấy cổng COMTồn Tại:
Private Function ValidatePort() As Boolean
Dim i As Integer
On Error Resume Next
ValidatePort = False
With MSComm1
For i = 4 To 1 Step -1
.CommPort = i
Err.Clear
.PortOpen = True
If (Err.Number <> 0) Then
mnuCom(i).Enabled = False
Else
ValidatePort = True
.PortOpen = False
End If
Next i
End With
End Function
Private Sub Form_Load()
If Not ValidatePort Then
MsgBox "Khong ton tai cong COM nao trong may tinh cua ban", , "Thong bao"
End
End If
End SubMy department's Website: www4.hcmut.edu.vn/~thietbidien/trangchu
Motorola-FreeScale's MCU 68HC11 & HCS12X Supporter
Comment
-
cảm ơn bác phamthaihoa và bác hoanglongu.
đoạn mã mà mình post ở trên có thể cho biết trên máy có mấy cổng COM (kể cả COM ảo, USB to COM). Mình sẽ kết hợp đoạn mã mình tìm được với kỹ thuật mà các bác hướng dẫn để phát hiện cổng COM nào đang bị chiếm. Có điều mình vẫn chưa biết cách dùng câu lệnh mà bác phamthaihoa đã chỉ ra, phải mất thêm một chút thời gian nghiên cứu nữa mới được.
chào các bác
Comment
-
Vậy có trường hợp là PC của mình không có cổng COM nào ko anh? Vì em vào device manager của PC thì không có cái nào là port cả, thêm nữa là em chạy chương trình java test số cổng COM thì không có cổng COM nào xuất hiện sau khi chạy xong chương trình cả.Nguyên văn bởi hoanglongu Xem bài viếtĐể biết PC có mấy cổng COM , ta có thể Theo Giải thuật này (mình dùng VISUAL BASIC- nên không biết có Ích không ,nhưng POST lên , hy vọng có chút ích về GIẢI THUẬT) .
Ở đây ,mình chọn tối đa là có 4 cổng COM , sau khi KIỂM TRA ,sẽ biết được mấy cổng COMTồn Tại:
Comment
-
Em vẫn thấy trên lap của em có một cổng có 25 chân , liệu đó có phải là cổng COM ko ạ?Nguyên văn bởi duong_act Xem bài viếtLaptop bây giờ ko có USB=> COM thì làm gì còn COM nữa
.
Comment
-
em thấy trên laptop vẫn có 1 cổng có 25 chân. thường để cắm ra máy chiếu, vậy đấy là công j vậy ak?
Comment
-
cái cổng đó gọi là cổng VGA anh à, đọc là vê ga.Nguyên văn bởi tranthangbk Xem bài viếtem thấy trên laptop vẫn có 1 cổng có 25 chân. thường để cắm ra máy chiếu, vậy đấy là công j vậy ak?
Comment
-
25 hay 15?Nguyên văn bởi tranthangbk Xem bài viếtem thấy trên laptop vẫn có 1 cổng có 25 chân. thường để cắm ra máy chiếu, vậy đấy là công j vậy ak?
nếu là 25 chân là lpt, cổng song song cho máy in.
nếu là 15 chân là vga, cổng video gắn cho màng hình rời.Mãi đi tìm vàng.
Comment
Bài viết mới nhất
Collapse
-
bởi mèomướp1. Tìm hiểu đc thì càng tốt, bận thì thôi. Ko cần quá quan trọng
2. Số tự động cho đơn giản, kiểu như đi xe ga ấy ạ
3. Học lý thuyết tử tế ok
4.ok
5.có. đủ số km, tgian cầm lái là đc
6.đi ăn tập thể,...-
Channel: Tâm tình dân kỹ thuật
Hôm qua, 16:34 -
-
Trả lời cho Tìm bạn thân quen cũ.bởi lvhnE nhớ bác Vivanpham làm bên điện tử y sinh, có lần đó cái sơ đồ máy chụp x quang sao có mấy con thryristor làm gì mà ko ai trả lới đúng cả
...
-
Channel: Tâm tình dân kỹ thuật
07-08-2026, 09:17 -
-
Trả lời cho Amply bị rò DC 22 voltbởi lvhnBác kiểm tra lại đường mạch, mối hàn xem có bị hở hoặc dẫn không tốt không?
Thay cầu diode lớn hơn càng tốt không vấn đề gì cả....-
Channel: Điện thanh
07-08-2026, 09:12 -
-
bởi LantheChào bạn.
Trục đầu ra của hộp số hành tinh xoắn ốc được kết nối với mặt bích của khách hàng thông qua một trục răng trong. Sau chưa đầy sáu tháng hoạt động, nó phát ra tiếng kêu lách cách và độ rơ lớn đáng báo động.
Việc...-
Channel: Thiết bị điện tử cá nhân
06-08-2026, 13:05 -
-
bởi ittcChào các anh em nhé, mình dự định sắp tới sẽ đi học lái xe Ôtô, thi lấy bằng lái. Cụ thể mình sẽ học và thi lấy giấy phép lái xe hạng B. Thật sự mình là người chưa có kiến thức hiểu biết gì về Ôtô cả ? tất nhiên mình sẽ phải...-
Channel: Tâm tình dân kỹ thuật
-

Comment