最好给点代码或指导一下

解决方案 »

  1.   

    这里有篇文章, 自己看吧.
    Get the hard disk serial number or Motherboard serial number
    http://www.rgagnon.com/javadetails/java-0580.html
      

  2.   

    直接贴在这儿多好:
    Motherboard serial numberimport java.io.File;
    import java.io.FileWriter;
    import java.io.BufferedReader;
    import java.io.InputStreamReader;public class MiscUtils {
      private MiscUtils() {  }  public static String getMotherboardSN() {
      String result = "";
        try {
          File file = File.createTempFile("realhowto",".vbs");
          file.deleteOnExit();
          FileWriter fw = new java.io.FileWriter(file);      String vbs =
             "Set objWMIService = GetObject(\"winmgmts:\\\\.\\root\\cimv2\")\n"
            + "Set colItems = objWMIService.ExecQuery _ \n"
            + "   (\"Select * from Win32_BaseBoard\") \n"
            + "For Each objItem in colItems \n"
            + "    Wscript.Echo objItem.SerialNumber \n"
            + "    exit for  ' do the first cpu only! \n"
            + "Next \n";      fw.write(vbs);
          fw.close();
          Process p = Runtime.getRuntime().exec("cscript //NoLogo " + file.getPath());
          BufferedReader input =
            new BufferedReader
              (new InputStreamReader(p.getInputStream()));
          String line;
          while ((line = input.readLine()) != null) {
             result += line;
          }
          input.close();
        }
        catch(Exception e){
            e.printStackTrace();
        }
        return result.trim();
      }  public static void main(String[] args){
        String cpuId = MiscUtils.getMotherboardSN();
        javax.swing.JOptionPane.showConfirmDialog((java.awt.Component)
             null, cpuId, "Motherboard serial number",
             javax.swing.JOptionPane.DEFAULT_OPTION);
      }
    }
      

  3.   

    Hard disk serial numberimport java.io.File;
    import java.io.FileWriter;
    import java.io.BufferedReader;
    import java.io.InputStreamReader;public class DiskUtils {
      private DiskUtils() {  }  public static String getSerialNumber(String drive) {
      String result = "";
        try {
          File file = File.createTempFile("realhowto",".vbs");
          file.deleteOnExit();
          FileWriter fw = new java.io.FileWriter(file);      String vbs = "Set objFSO = CreateObject(\"Scripting.FileSystemObject\")\n"
                      +"Set colDrives = objFSO.Drives\n"
                      +"Set objDrive = colDrives.item(\"" + drive + "\")\n"
                      +"Wscript.Echo objDrive.SerialNumber";  // see note
          fw.write(vbs);
          fw.close();
          Process p = Runtime.getRuntime().exec("cscript //NoLogo " + file.getPath());
          BufferedReader input =
            new BufferedReader
              (new InputStreamReader(p.getInputStream()));
          String line;
          while ((line = input.readLine()) != null) {
             result += line;
          }
          input.close();
        }
        catch(Exception e){
            e.printStackTrace();
        }
        return result.trim();
      }  public static void main(String[] args){
        String sn = DiskUtils.getSerialNumber("C");
        javax.swing.JOptionPane.showConfirmDialog((java.awt.Component)
             null, sn, "Serial Number of C:",
             javax.swing.JOptionPane.DEFAULT_OPTION);
      }
    }
      

  4.   

    程序员在深圳java群 4247660 欢迎高手的加入