Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# windows域中的模拟_C#_Windows_Winforms_Dns_Impersonation - Fatal编程技术网

C# windows域中的模拟

C# windows域中的模拟,c#,windows,winforms,dns,impersonation,C#,Windows,Winforms,Dns,Impersonation,我正在尝试编写一个模拟控件,我们的员工可以在我们的应用程序中以不同的域用户身份登录,请参见下面的我的代码(几乎完整的): 安全令牌句柄: public sealed class SafeTokenHandle : SafeHandleZeroOrMinusOneIsInvalid { private SafeTokenHandle() : base(true) { } [DllImport("kernel32.dll", SetLastError = true)] [R

我正在尝试编写一个模拟控件,我们的员工可以在我们的应用程序中以不同的域用户身份登录,请参见下面的我的代码(几乎完整的):

安全令牌句柄

public sealed class SafeTokenHandle : SafeHandleZeroOrMinusOneIsInvalid
{
    private SafeTokenHandle() : base(true) { }

    [DllImport("kernel32.dll", SetLastError = true)]
    [ReliabilityContract(Consistency.WillNotCorruptState, Cer.Success)]
    [SuppressUnmanagedCodeSecurity]
    [return: MarshalAs(UnmanagedType.Bool)]
    private static extern bool CloseHandle(IntPtr handle);

    protected override bool ReleaseHandle()
    {
        return CloseHandle(handle);
    }
}

现在我总是遇到Win32错误“用户名或密码错误”。我做错什么了吗?

也许这门课对你有帮助

在调用方法LogonUser之前,您需要指定您的用户、域、密码

string user = "MyUserName" ;
string domain = "MyDomain";
string Password = "MyPassword";

//Call LogonUser to obtain a handle to an access token.
bool returnValue = LogonUser(user, domain, password,
LOGON32_LOGON_INTERACTIVE, LOGON32_PROVIDER_DEFAULT,
out safeTokenHandle); 

“几乎完整的MSDN文章副本”-哦,当然。你不会碰巧有某篇文章的链接吧?其中有很多,我们可能不知道你指的是哪一个。很抱歉,编辑了我的帖子。
string user = "MyUserName" ;
string domain = "MyDomain";
string Password = "MyPassword";

//Call LogonUser to obtain a handle to an access token.
bool returnValue = LogonUser(user, domain, password,
LOGON32_LOGON_INTERACTIVE, LOGON32_PROVIDER_DEFAULT,
out safeTokenHandle);