Import function [ DllImport("user32") ] public static extern bool ExitWindowsEx(uint uFlags, uint dwReserved ) ; Logon public bool Logon(string UserName,string Password) { //init variable string[] saTemp; string strUserName; string strDomainName; RegistryKey rkTemp; try { //get user name and domain name saTemp=UserName.Split("\".ToCharArray()); if(saTemp.Length>1) { strUserName=saTemp[1]; strDomainName=saTemp[0]; } else { strUserName=saTemp[0]; strDomainName=""; } //write logon information to registry rkTemp=Registry.LocalMachine.OpenSubKey(@"SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon",true); rkTemp.SetValue("AutoAdminLogon","1"); rkTemp.SetValue("AutoLogonCount",1); rkTemp.SetValue("DefaultUserName",strUserName); rkTemp.SetValue("DefaultPassword",Password); rkTemp.SetValue("DefaultDomainName",strDomainName); rkTemp.Close(); //reboot Reboot(""); return true; } catch(Exception exp) { throw exp; } } LogOff ExitWindowsEx((uint)EWX.EWX_LOGOFF,0); Reboot ExitWindowsEx((uint)(EWX.EWX_REBOOT | EWX.EWX_FORCE),0); ShutDown ExitWindowsEx((uint)(EWX.EWX_SHUTDOWN | EWX.EWX_FORCE),0); |