小山

付出最大努力,追求最高成就,享受最佳生活,收获无悔人生

博客园 首页 新随笔 联系 订阅 管理

1.首先引用

using System.Runtime.InteropServices;
2.html代码
<HTML>
    
<HEAD>
        
<title>WebForm3</title>
        
<meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
        
<meta name="CODE_LANGUAGE" Content="C#">
        
<meta name="vs_defaultClientScript" content="JavaScript">
        
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    
</HEAD>
    
<body MS_POSITIONING="GridLayout">
        
<form id="Form1" method="post" runat="server">
            
<asp:Button id="Button1" style="Z-INDEX: 101; LEFT: 16px; POSITION: absolute; TOP: 16px" runat="server"
                Text
="添加用户"></asp:Button>
            
<asp:Button id="Button2" style="Z-INDEX: 102; LEFT: 16px; POSITION: absolute; TOP: 64px" runat="server"
                Text
="删除用户"></asp:Button>
            
<asp:Button id="Button3" style="Z-INDEX: 103; LEFT: 16px; POSITION: absolute; TOP: 112px" runat="server"
                Text
="修改用户"></asp:Button>
            
<asp:Button id="Button4" style="Z-INDEX: 104; LEFT: 16px; POSITION: absolute; TOP: 152px" runat="server"
                Text
="修改用户密码"></asp:Button>
            
<asp:Button id="Button5" style="Z-INDEX: 105; LEFT: 16px; POSITION: absolute; TOP: 216px" runat="server"
                Text
="获得用户列表"></asp:Button>
            
<asp:Button id="Button6" style="Z-INDEX: 106; LEFT: 16px; POSITION: absolute; TOP: 264px" runat="server"
                Text
="识别用户组的关系"></asp:Button>
        
</form>
    
</body>
</HTML>
3.cs代码
public class WebForm3 : System.Web.UI.Page
    
{
        
protected System.Web.UI.WebControls.Button Button2;
        
protected System.Web.UI.WebControls.Button Button3;
        
protected System.Web.UI.WebControls.Button Button4;
        
protected System.Web.UI.WebControls.Button Button5;
        
protected System.Web.UI.WebControls.Button Button6;
        
protected System.Web.UI.WebControls.Button Button1;
        
//新增用户
        [DllImport("Netapi32.dll")] 
        
public static extern  int NetUserAdd([MarshalAs(UnmanagedType.LPWStr)] string servername, int level, ref USER_INFO_1 buf, int parm_err);
        [StructLayout(LayoutKind.Sequential, CharSet
=CharSet.Unicode)] 
        
public struct USER_INFO_1 
        

            
public string usri1_name;  
            
public string usri1_password;  
            
public int usri1_password_age;  
            
public int usri1_priv;  
            
public string usri1_home_dir;  
            
public string comment;  
            
public int usri1_flags;  
            
public string usri1_script_path; 
        }
 
        
//删除用户
        [DllImport("Netapi32.dll")] 
        
public static extern int NetUserDel([MarshalAs(UnmanagedType.LPWStr)] string servername, [MarshalAs(UnmanagedType.LPWStr)] string username); 
        
//修改用户
        [DllImport("Netapi32.dll")] 
        
public static extern int NetUserGetInfo([MarshalAs(UnmanagedType.LPWStr)] string servername,[MarshalAs(UnmanagedType.LPWStr)] string username,int level,out IntPtr bufptr); 
        [DllImport(
"Netapi32.dll")] 
        
public static extern int NetUserSetInfo([MarshalAs(UnmanagedType.LPWStr)] string servername,[MarshalAs(UnmanagedType.LPWStr)] string username,int level,ref USER_INFO_1 buf, int error);
        
//修改用户密码
        [DllImport("Netapi32.dll")] 
        
public static extern int NetUserChangePassword([MarshalAs(UnmanagedType.LPWStr)] string domainname,[MarshalAs(UnmanagedType.LPWStr)] string username,[MarshalAs(UnmanagedType.LPWStr)] string oldpassword,[MarshalAs(UnmanagedType.LPWStr)] string newpassword); 
        
//获得用户列表
        [StructLayout(LayoutKind.Sequential, CharSet=CharSet.Unicode)] 
        
public struct USER_INFO_0 
        

            
public String Username; 
        }
  
        [DllImport(
"Netapi32.dll")] 
        
extern static int NetUserEnum([MarshalAs(UnmanagedType.LPWStr)] string servername, int level, int filter, out IntPtr bufptr, int prefmaxlen, out int entriesread, out int totalentries, out int resume_handle); 
        [DllImport(
"Netapi32.dll")] 
        
extern static int NetApiBufferFree(IntPtr Buffer);
         
        
//识别用户组的关系
        [StructLayout(LayoutKind.Sequential, CharSet=CharSet.Unicode)] 
        
public struct LOCALGROUP_USERS_INFO_0 
        

            
public string groupname; 
        }
 
 
        [DllImport(
"Netapi32.dll")] 
        
public extern static int NetUserGetLocalGroups([MarshalAs(UnmanagedType.LPWStr)] string servername,[MarshalAs(UnmanagedType.LPWStr)] string username, int level, int flags, out IntPtr bufptr, int prefmaxlen, out int entriesread, out int totalentries); 
        
private void Page_Load(object sender, System.EventArgs e)
        
{
            
// Put user code to initialize the page here
        }


        
Web Form Designer generated code

        
新增用户
        
        
删除用户

        
修改用户

        
修改用户密码

        
获得用户列表

        
识别用户组的关系

        
AlertError

    }
4.参考文章
http://www.csharphelp.com/archives2/archive439.html
posted on 2005-12-24 14:35  小山  阅读(2268)  评论(1编辑  收藏  举报