C#中模拟帐号登陆

class Program
{
    static void Main(string[] args)
    {
        IntPtr admin_token = default(IntPtr);
        WindowsIdentity wid_admin = null;
        WindowsImpersonationContext wic = null;

        //在程序中模拟域帐户登录

        if (WinLogonHelper.LogonUser("uid", "serverdomain", "pwd", 9, 0, ref admin_token) != 0)
        {

            using (wid_admin = new WindowsIdentity(admin_token))
            {
                using (wic = wid_admin.Impersonate())
                {
                    //假定要操作的文件路径是10.0.250.11上的d:\txt.txt文件可以这样操作
                    FileInfo file = new FileInfo(@"\\10.0.250.11\d$\txt.txt");
                    //想做什么操作就可以做了
                }

            }

        }

    }
}

posted @ 2013-03-04 21:03  一马  阅读(237)  评论(0编辑  收藏  举报