<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    Java Votary

      BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
      48 隨筆 :: 1 文章 :: 80 評論 :: 0 Trackbacks

    方法一:

    調用Windows的DOS命令,從輸出結果中讀取MAC地址:

    public static String getMACAddress() {

    String address = "";
    String os = System.getProperty("os.name");
    if ( os != null && os.startsWith("Windows")) {
    try {
    String command = "cmd.exe /c ipconfig /all";
    Process p = Runtime.getRuntime().exec(command);
    BufferedReader br =
    new BufferedReader(
    new InputStreamReader(p.getInputStream()));
    String line;
    while ((line = br.readLine()) != null) {
    if (line.indexOf("Physical Address") > 0) {
    int index = line.indexOf(":");
    index += 2;
    address = line.substring(index);
    break;
    }
    }
    br.close();
    return address.trim();
    }
    catch (IOException e) { }
    }
    return address;
    }

    We can replace the "ipconfig" to "ping x.x.x.x" and "arp -a"...We can get the mac list...haha!!

    缺點:只能取得服務器端MAC地址.如果要取得客戶端的MAC地址,需用Applet.只針對MS-WIN系統.

     

    方法二:

    可以用JS或vbscript來調用WMI接口來獲取Client端的MAC地址.


     
     
     
     
     
     
     
      
      

      
      

      


      

       
       
       

      
     

    忘了附上原文的出處了:
    How to get IP address of the browser when its operating behind a proxy/firewall? (applets...activex....??)
    http://www.faqts.com/knowledge_base/view.phtml/aid/9005/fid/125

    關于WMI的詳細信息可以參看MSDN:
    http://msdn.microsoft.com/library/default.asp?url=/library/en-us/wmisdk/wmi/wmi_tasks_for_scripts_and_applications.asp

    平心而論,WMI的很強大的。原先需要動用重量級編程工具才能做到的事,現在用js/vbscript就可以做了。

    獲取多塊網卡的MAC地址:

    if(objObject.MACAddress != null && objObject.MACAddress != "undefined"){
                             MACAddr = objObject.MACAddress;
                             alert( MACAddr );
                       }

    缺點:需要ActiveX支持.對MS-WIN系統有效.

    方法三:

    想137口發送UDP查詢:

    WINDOWS平臺的客戶端(當獲取時它轉換為服務端角色),NETBIOS協議在137口上,我們只要向它的137口發送UDP查詢,獲取它的返回值就可以獲取到它所有的網卡地址.

    以上內容來自dev2dev的討論帖:

    http://dev2dev.bea.com.cn/bbs/thread.jspa?forumID=121&threadID=12941&tstart=0

     

    posted on 2005-01-20 08:50 eamoi 閱讀(636) 評論(1)  編輯 收藏 收藏至365Key 所屬分類: Java

    評論: # Java系統如何獲取客戶端的MAC地址? [TrackBack] 2005-01-20 11:01 | eamoi
    Ping Back來自:blog.csdn.net
    eamoi引用了該文章,地址:http://blog.csdn.net/eamoi/archive/2005/01/20/260611.aspx
    posted on 2005-11-23 20:33 Dion 閱讀(9760) 評論(3)  編輯  收藏 所屬分類: Java

    評論

    # re: [收藏]如何獲取客戶端MAC地址 2007-03-29 12:28 joyce
    import java.io.*;

    public class GetMac
    {
    //通過IP獲取網卡地址
    private String getMacAddressIP(String remotePcIP){
    String str="";
    String macAddress="";
    try {
    Process pp= Runtime.getRuntime().exec ("nbtstat -A " + remotePcIP);
    InputStreamReader ir = new InputStreamReader(pp.getInputStream());
    LineNumberReader input = new LineNumberReader (ir);
    for (int i = 1; i <100; i++)
    {
    str=input.readLine();
    if (str!=null)
    {
    if(str.indexOf("MAC Address")>1)
    { macAddress=str.substring(str.indexOf("MAC Address")+14,str.length());
    break;
    }
    }
    }
    }
    catch (IOException ex) {}
    return macAddress;
    }
    //通過機器名獲取網卡地址
    private String getMacAddressName(String remotePcIP){
    String str="";
    String macAddress="";
    try {
    Process pp= Runtime.getRuntime().exec ("nbtstat -a " + remotePcIP);
    InputStreamReader ir = new InputStreamReader(pp.getInputStream());
    LineNumberReader input = new LineNumberReader (ir);
    for (int i = 1; i <100; i++)
    {
    str=input.readLine();
    if (str!=null)
    {
    if(str.indexOf("MAC Address")>1)
    { macAddress=str.substring(str.indexOf("MAC Address")+14,str.length());
    break;
    }
    }
    }
    }
    catch (IOException ex) {}
    return macAddress;
    }
    public static void main(String[] args)
    {
    GetMac getmac;
    getmac=new GetMac();
    String mac="";
    mac=getmac.getMacAddressIP("192.168.0.18");//YOUR IP
    System.out.println(mac);
    mac=getmac.getMacAddressName("tom");// YOUR HOST-NAME
    System.out.println(mac);
    }
    }
      回復  更多評論
      

    # re: [收藏]如何獲取客戶端MAC地址 2008-09-11 22:17 tg54y
    <input type='text' value='奶子'/>  回復  更多評論
      

    # re: [收藏]如何獲取客戶端MAC地址 2009-11-02 21:17 愛愛愛
    樓主,請把成熟點的東西放上來,  回復  更多評論
      

    主站蜘蛛池模板: 无码人妻一区二区三区免费视频| 午夜私人影院免费体验区| 日韩国产欧美亚洲v片| 久久91亚洲精品中文字幕| 免费萌白酱国产一区二区| 18勿入网站免费永久| 久久免费线看线看| 一级一片免费视频播放| 亚洲AV无码一区二区三区牲色 | 日本久久久久亚洲中字幕| 久久久久亚洲?V成人无码| 日韩免费观看视频| 日韩一区二区a片免费观看| 99久久免费观看| 免费无码又爽又刺激一高潮| 一级毛片无遮挡免费全部| 美女被免费网站视频在线| 亚洲乱色熟女一区二区三区蜜臀| 亚洲国产成人久久| 久久亚洲精品无码AV红樱桃| 久久精品国产亚洲AV麻豆王友容 | 国产精品免费视频观看拍拍| 亚洲AV无码一区二区大桥未久| 亚洲乱码一区av春药高潮| 亚洲视频在线一区二区三区| 亚洲AV午夜福利精品一区二区| 中文字幕亚洲图片| 久久久久亚洲AV综合波多野结衣| 国产免费一区二区三区VR| 免费理论片51人人看电影| 最近2019中文字幕mv免费看| 在线永久看片免费的视频| 成人浮力影院免费看| 又大又硬又爽又粗又快的视频免费| 野花香高清在线观看视频播放免费| 国产中文字幕在线免费观看| 一级做a爱过程免费视| 一级**爱片免费视频| 成av免费大片黄在线观看 | 亚洲乱码国产一区三区| 亚洲中文字幕在线观看|