Hi,
Does exist any way to get information that is connected any active equipment into LAN connector ?
Thanks
			
			
			
				Hi, check this WMI example, it uses the NetConnectionStatus property of Win32_NetworkAdapter:
$include "wbemdisp.inc"
$include "commctrl.inc"
CONST IDC_LIST = 1000
DIALOG d1
CREATEDIALOG d1,0,0,556,311,0x80CA0080,0,"Caption",&d1_handler
CONTROL d1,@LISTVIEW,"",9,9,537,289,0x50010009,IDC_LIST
CoInitializeEx(0, COINIT_MULTITHREADED)
domodal d1
CoUninitialize()
SUB d1_handler
	SELECT @MESSAGE
		CASE @IDINITDIALOG
			CENTERWINDOW d1
			CONTROLCMD d1, IDC_LIST, @LVINSERTCOLUMN, 0, "Adapter"
			CONTROLCMD d1, IDC_LIST, @LVINSERTCOLUMN, 1, "State"
			CONTROLCMD d1, IDC_LIST, @LVSETCOLWIDTH, 0, 240
			CONTROLCMD d1, IDC_LIST, @LVSETCOLWIDTH, 1, 240
			ListView_SetExtendedListViewStyle(GetControlHandle(d1, IDC_LIST), LVS_EX_FULLROWSELECT | LVS_EX_LABELTIP)
			CloseHandle(CreateThread(0,0,&Refresh,0,0,&@LPARAM))
		CASE @IDCLOSEWINDOW
			CLOSEDIALOG d1,@IDOK
		CASE @IDCONTROL
			if (@CONTROLID = IDC_LIST)
				select (@NOTIFYCODE)
					case LVN_KEYDOWN
						if (*<NMLVKEYDOWN>@LPARAM.wVKey = VK_F5)
							Refresh()
						endif
				endselect
			ENDIF
	ENDSELECT
RETURN
ENDSUB
sub Refresh(opt int reserved)
	CONTROLCMD d1, IDC_LIST, @LVDELETEALL
	CONTROLCMD d1, IDC_LIST, @LVINSERTITEM, 0, "Loading..."
	int item = 0
	ISWbemServices pServices
	if (!CoGetObject(L"winmgmts:{impersonationLevel=impersonate}", 0, _IID_ISWbemServices, &pServices))
		CONTROLCMD d1, IDC_LIST, @LVDELETEALL
		ISWbemObjectSet pObjectSet=0
		BSTR bstrClass = SysAllocString(L"Win32_NetworkAdapter")
		if (!pServices->InstancesOf(bstrClass, wbemFlagReturnImmediately, 0, &pObjectSet))
			' pObjectSet contais all instances of NetworkAdapter. Enumerate them
			IEnumVariant enumv
			if (GetEnumerator(pObjectSet, &enumv))
				VARIANT var
				while (!enumv->_Next(1, &var, 0))
					ISWBemObject object
					if (GetObjectFromVariant(var, _IID_ISWBemObject, &object))
						' get the properties
						ISWbemPropertySet props=0
						if (!object->get_Properties_(&props) and props)
							' property Description
							VARIANT value
							BOOL failure = TRUE
							if (GetProperty(props, L"Description", VT_BSTR, value))
								CONTROLCMD d1, IDC_LIST, @LVINSERTITEM, item, w2s(value.*<wstring>bstrVal)
								VariantClear(&value)
								failure = FALSE
							endif
							if (failure) then goto _skip
							' property NetConnectionStatus
							if (GetProperty(props, L"NetConnectionStatus", VT_I4, value))
								select (value.lVal)
									case 0: CONTROLCMD d1, IDC_LIST, @LVSETTEXT, item, 1, "Disconnected"
									case 1: CONTROLCMD d1, IDC_LIST, @LVSETTEXT, item, 1, "Connecting"
									case 2: CONTROLCMD d1, IDC_LIST, @LVSETTEXT, item, 1, "Connected"
									case 3: CONTROLCMD d1, IDC_LIST, @LVSETTEXT, item, 1, "Disconnecting"
									case 4: CONTROLCMD d1, IDC_LIST, @LVSETTEXT, item, 1, "Hardware not present"
									case 5: CONTROLCMD d1, IDC_LIST, @LVSETTEXT, item, 1, "Hardware disabled"
									case 6: CONTROLCMD d1, IDC_LIST, @LVSETTEXT, item, 1, "Hardware malfunction"
									case 7: CONTROLCMD d1, IDC_LIST, @LVSETTEXT, item, 1, "Media disconnected"
									case 8: CONTROLCMD d1, IDC_LIST, @LVSETTEXT, item, 1, "Authenticating"
									case 9: CONTROLCMD d1, IDC_LIST, @LVSETTEXT, item, 1, "Authentication succeeded"
									case 10: CONTROLCMD d1, IDC_LIST, @LVSETTEXT, item, 1, "Authentication failed"
									case 11: CONTROLCMD d1, IDC_LIST, @LVSETTEXT, item, 1, "Invalid address"
									case 12: CONTROLCMD d1, IDC_LIST, @LVSETTEXT, item, 1, "Credentials required"
								endselect
							endif
							VariantClear(&value)
							item++
label _skip
							props->Release()
						endif
						object->Release()
					endif
					VariantClear(&var)
				endwhile
				enumv->Release()
			endif
			pObjectSet->Release()
		endif
		SysFreeString(bstrClass)
		pServices->Release()
	endif
endsub
sub GetEnumerator(ISWbemObjectSet pObjectSet, pointer ppEnum),BOOL
	BOOL success = FALSE
	IUnknown unk=0
	if (!pObjectSet->get__NewEnum(&unk)) ' use get__NewEnum() because we do not know names for Item()
		success = (!unk->QueryInterface(_IID_IEnumVariant, ppEnum))
		unk->Release()
	endif
	return success
endsub
sub GetObjectFromVariant(VARIANT var, IID refiid, pointer ppv),BOOL
	return (((var.vt=VT_UNKNOWN) or (var.vt=VT_DISPATCH)) and var.pUnkVal and !var.pUnkVal->QueryInterface(refiid, ppv))
endsub
sub GetProperty(ISWbemPropertySet props, wstring name, VARTYPE _type, VARIANT value),BOOL
	BOOL success = FALSE
	ISWbemProperty property=0
	BSTR bstrProperty = SysAllocString(name)
	value.vt = VT_EMPTY
	if (!props->Item(bstrProperty, 0, &property))
		if (!property->get_Value(&value))
			success = SUCCEEDED(VariantChangeType(&value, &value, 0, _type))
		endif
		property->Release()
	endif
	SysFreeString(bstrProperty)
	return success
endsub
			
			
			
				OK - but I have not
$include "wbemdisp.inc"
$include "commctrl.inc"
Paja
			
			
			
				Paja, follow the "Aurora and EBasic SDK Headers" link from my signature, find the latest links, download the pak for Ebasic and install it. You don't even need to restart EB.
If you have custom .inc files in the /include subdirectory, make a backup because 1521 (or less) new files will be added.