Java를 사용하여 네트워크 이벤트를 캡처 할 수 있습니까?캡처 네트워크 연결 이벤트
예를 들어 허브에 ethenet 어댑터를 연결하면 '연결'이 표시되고 이는 Windows XP에서 감지되며 '거품'이 사용자에게 표시됩니다. Windows는 또한 응용 프로그램, 특히 Java로 작성된 응용 프로그램에서 캡처 할 수있는 이벤트를 브로드 캐스트합니까?
Java를 사용하여 네트워크 이벤트를 캡처 할 수 있습니까?캡처 네트워크 연결 이벤트
예를 들어 허브에 ethenet 어댑터를 연결하면 '연결'이 표시되고 이는 Windows XP에서 감지되며 '거품'이 사용자에게 표시됩니다. Windows는 또한 응용 프로그램, 특히 Java로 작성된 응용 프로그램에서 캡처 할 수있는 이벤트를 브로드 캐스트합니까?
내가 아는 한 Java에서 감지 할 수있는 이벤트가 없습니다. 매우 특정 OS입니다. 할 수있는 일은 가끔씩 사용 가능한 네트워크 인터페이스를 폴링하는 것입니다.
Enumeration<NetworkInterface> e = NetworkInterface.getNetworkInterfaces();
이것은 내가 의심 한 것입니다. 가능한 경우 폴링을 피하고 싶습니다. 아마도 사용자가 시작한 수표/검색을 사용해야 할 것입니다. – Kerry
신뢰할 수있는 URL을 주기적으로 폴링하는 스레드를 만들어 네트워크 연결이 있는지 여부를 확인하는 것이 가장 좋습니다. Windows에서 네트워크 이벤트를 감지하려면 Windows API에 대한 JNI 호출이 필요합니다.
URL을 폴링 하시겠습니까? 나는 인터넷 연결을 감지하지 못한다고 생각한다. "ethenet 어댑터를 허브에 연결하면 '연결'이됩니다."... 그는 이더넷 연결 이벤트가 Windows에서 감지 될 때이를 감지하려고합니다. – gtiwari333
예, 정확히 그 뜻입니다. – Kerry
내가 볼 수있는 모든 응용 프로그램이 연결이 가능하면 "수동으로"계속 확인하므로 이러한 이벤트가 브로드 캐스트되지는 않습니다. – Viruzzo
@Kerubu, LAN 연결 또는 인터넷 연결을 확인 하시겠습니까? – gtiwari333
LAN 연결. – Kerry