Tôi có một ứng dụng mà tôi kế thừa nghe trên cổng 7001 cho chương trình phát sóng UDP từ thiết bị kiểm tra nội bộ của chúng tôi và gần đây tôi đã cập nhật một ứng dụng khác cần thực hiện tương tự. Cả hai ứng dụng phải có khả năng cùng tồn tại trên cùng một máy tính.Làm cách nào để phát hiện chương trình nào đang nghe cổng tcp/ip trong Windows?
Hiện tại, khi ứng dụng cập nhật gần đây của tôi cố gắng liên kết với cổng để nghe chương trình phát sóng UDP và không thành công, nó chỉ báo cáo rằng cổng không khả dụng và cho biết ứng dụng được kế thừa có thể đang chạy. Làm cách nào để ứng dụng của tôi phát hiện ứng dụng thực sự đang nghe trên cổng đó? Tôi đã thực hiện một tìm kiếm của Google và thậm chí đã tìm kiếm trang web này nhưng cho đến nay tôi đã không thể tìm thấy bất cứ điều gì ngoại trừ để sử dụng Task Manager, TCPView, hoặc netstat tại dòng lệnh.
Tôi muốn một kỹ thuật mà một trong hai sử dụng API Windows hoặc Windows thành phần hệ thống COM, vì cả hai ứng dụng được viết bằng VB6. (Tôi biết, tôi biết, nhưng tôi phải duy trì các ứng dụng này vì chúng là nhiệm vụ quan trọng.) Tuy nhiên, một giải pháp .NET cũng sẽ hữu ích trong trường hợp tôi cần nó trong các nỗ lực phát triển mới của tôi.
GetTcpTable2 có thể giúp bạn xử lý id. câu hỏi tương tự ở đây [link] (http://stackoverflow.com/questions/13295277/check-on-avaiable-port-using-wmi-win32-class) – user2773289
Không biết nếu bạn có thể sử dụng này hay không nhưng MSDN entry cho ở trên với một số mẫu mã là tại http://msdn.microsoft.com/en-us/library/windows/desktop/bb408406(v=vs.85).aspx –
Bạn cũng có thể nhận được thông tin này qua WMI. Rất tiện dụng. – EJP