O JScript chama ActivexObject para obter o endereço MAC da placa de rede do hóspede. Observe que ele só pode ser executado no IE (IE8+ não testou). Haverá um prompt de segurança, que é o seguinte:
A cópia do código é a seguinte:
A interação entre os controles ActiveX nesta página e outras seções nesta página pode ser insegura. Você quer permitir esse tipo de interação?
Observe que a seleção "sim", se o erro for relatado, não pode ser obtido:
O código -fonte é o seguinte:
<html> <head> <title> jScript+ActiveX Obtenha o endereço da placa de rede Mac do hóspede </title> </head> <body> <object Classid = "CLSID: 76A64158-CB41-11D1-8B02-00600806D9B6" ID = "LOCATOR" Style = "Display: Nenhum; NENHUM; NENHUM; ClassID = "CLSID: 75718C9A-F029-11D1-A1AC-00C04FB6C223" ID = "foo" style = "Display: nenhum; visibilidade: hidden"> </ject> <nome name = "myform"> <br/> Mac. name = "ipaddress"> <br/> Nome do host: <input type = "text" name = "hostname"> </morm> </body> </html> <script linguagem = "javascript"> var smacaddr = ""; var sipaddr = ""; var sdnsname = ""; var Service = locator.ConnectServer (); Service.Security_.IMPERSONATIONLEVEL = 3; Service.InstancesOfasync (Foo, 'Win32_NetworkAdapterConfiguration'); </script> <script para = "foo" event = "onobjectiony (objobject, objasyncContext)" idioma = "jscript"> if (objobject.ipeNabled! = null && objobject.ipeNabled! !] if (objobject.macaddress! = null && objobject.macaddress! = "indefinido") smacaddr = objobject.macaddress; if (objobject.dnshostname! = null && objobject.dnshostname! = "indefinido") sdnsname = objobject.dnshostname; } </script> <script para = "foo" event = "oncompleted (hresult, perrorObject, pasynccontext)" idioma = "jscript"> myform.macaddress.value = smacaddr; myform.ipaddress.value = sipaddr; myform.hostname.value = sdnsname; </script>