要做一个系统,他的登陆帐户使用windows帐户。怎么做?帮忙!!!!

解决方案 »

  1.   

    桌面程序的话
    System.getProperty("user.name");
      

  2.   

    就是这个意思,类似于sqlserver的认证方式,可以使用系统的用户系统,也可以使用windows的用户系统。请大家出出主意。谢了!!
      

  3.   

    你要客户端的话,就让这行代码在客户端运行就是了。不过这样不太好,如果js能调出或html等客户端代码能调出的话,就好了,你查查吧。
      

  4.   

    /**
     * 2005-12-16
     */
    package com.beihehuaiyu.base;import java.io.BufferedReader;
    import java.io.InputStreamReader;
    import java.util.Properties;/**
     * @author 被褐怀玉
     * @author [email protected]
     * @author 做一个幸福的人,甘于辛勤、奋斗一生,最后可以温暖地死去
     *
     */
    public class CurrentUser {
    /**
     * 系统当前登陆的用户名
     */
    private String username;
    public CurrentUser(){
    setUsername();
    }
      
    public String getUsername() {
    return username;
    } private void setUsername() {
    Process process = null;

    Runtime r = Runtime.getRuntime();
        try
        {
         process = r.exec( "cmd.exe /c set user" );
        
         /**
          * 有三行:
          *  第一行是机器名:USERDOMAIN = 机器名
          *  第二行是当前登陆的用户名:USERNAME = 当前登陆的用户
          *  第三行是当前登陆用户的主文件夹:USERPROFILE = C:\Documents and Settings\Administrator
          */
         BufferedReader br = new BufferedReader ( new InputStreamReader( 
         process.getInputStream() ) );
        
         br.readLine();//跳过第一行
        
         String line = br.readLine();//读得第二行的值
        
         int index = line.indexOf('=');//等号位置
        
         //String key = line.substring(0, index);//等号前为键值:USERNAME
        
         username = line.substring(index + 1);//等号后为当前用户帐号
        
         //System.out.println(key + " = " + username);
             }
        catch(Exception e)
        {
          e.printStackTrace();
        }
    }
    public static void main(String[] args) {
        CurrentUser cu = new CurrentUser();
        
        System.out.println("当前windows用户帐号是:" + cu.getUsername());
      }
    }
      

  5.   

    结合JSP吧,那里边好像有返回当前客户端windows用户名的方法