<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 愛愛愛
    樓主,請把成熟點的東西放上來,  回復  更多評論
      

    主站蜘蛛池模板: 亚洲日本va在线观看| 亚洲一区在线免费观看| 亚洲综合av一区二区三区不卡 | 在线播放免费播放av片| 免费成人在线电影| 欧洲精品码一区二区三区免费看| 亚洲美女一区二区三区| 亚洲精品无码午夜福利中文字幕 | 亚洲色精品88色婷婷七月丁香 | 亚洲国产成人无码AV在线| 97se亚洲综合在线| 亚洲AV永久无码精品一百度影院| 免费a级毛片永久免费| 毛片a级毛片免费观看免下载| 99久久免费观看| 国产午夜精品久久久久免费视| 色一情一乱一伦一视频免费看| 国产午夜亚洲精品国产| 亚洲国产精品yw在线观看| 久久精品7亚洲午夜a| 亚洲中文字幕无码中文字在线| 成人伊人亚洲人综合网站222| 日本无吗免费一二区| 国内一级一级毛片a免费| 在线视频免费观看高清| 国产无人区码卡二卡三卡免费| 四虎在线最新永久免费| 57pao一国产成视频永久免费| 一级毛片aaaaaa免费看| 久久久久免费精品国产小说| 日本黄色动图免费在线观看| 久久久精品免费国产四虎| 成全在线观看免费观看大全| 日本一区午夜艳熟免费| a级毛片在线免费看| 最近免费mv在线观看动漫| 全免费a级毛片免费看| 一区二区在线免费观看| 30岁的女人韩剧免费观看| 99久久精品日本一区二区免费| 99久久99这里只有免费费精品|