LogonUser返回错误代码2

时间:2017-07-18 12:39:50

标签: c# file console-application impersonation

我正在尝试将文件从本地计算机复制到远程服务器的简单代码。问题是我从logonUser函数获取错误代码2,我不知道为什么。我不知道该把什么作为一个域(我已尝试过本地计算机的名称,空字符串,localhost),因为当我从该服务器映射驱动器我可以使用userName和密码来完成。

我正在使用的代码片段在这里:

public static void Impersonate(string domainName, string userName, string userPassword, Action actionToExecute)
{
    SafeTokenHandle safeTokenHandle;
    try
    {
        //parametry pripojeni
        const int LOGON32_PROVIDER_DEFAULT = 0;
        const int LOGON32_LOGON_INTERACTIVE = 2;
        const int LOGON32_LOGON_NEW_CREDENTIALS = 9;
        //Ziskani ovladace k pristupovemu tokenu
        bool returnValue = LogonUser(userName, domainName, userPassword, LOGON32_LOGON_INTERACTIVE, LOGON32_PROVIDER_DEFAULT, out safeTokenHandle);
    }
    catch(Exception e) { ... }
}

returnValue始终为false且错误代码为2.我会很高兴任何建议我可能做错了...

0 个答案:

没有答案