none
包含有空格的用户名,在调用LogonUser() API后总是报1326错误! RRS feed

  • 问题

  • 本人有一台电脑(Win7 x64),用户名中含有空格等字符,用户名为:Candy Yuan, 密码是: 11,  用MFC编程,用如下代码测试:
           HANDLE token;
    if (::LogonUser (L"Candy Yuan", L".",  L"11", LOGON32_LOGON_INTERACTIVE,  LOGON32_PROVIDER_DEFAULT, &token)) 

          ......

    else
    {
    DWORD e = ::GetLastError ();
    char msg[512] = {0};
    sprintf(msg, "Unable to logon user, err=%d, %s\n",e, Win32_Error_Message (e).c_str ());
    ::OutputDebugString(msg);
    }
    其结果总是FALSE,获取到的错误码为:1326 (Logon failure: unknown user name or bad password. ),如果用户名改为CandyYuan或是其他不含空格的名字,则可以正常登录并返回成功,请问各位专家,这是什么原因引起的,已经花了一天时间了,还没有找到原因,急啊.



    2015年9月6日 2:51

答案

  • 我在windows 8.1 和windows 7 x64的机子上用一个简单的控制台程序都测试过了,没有任何问题。

    所以我猜是你账户有问题,你确定密码,用户名还有域 都是正确的吗?创建一个新的测试账户还是会出现这个问题吗?


    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click HERE to participate the survey.

    • 已建议为答案 Shu 2017 2015年10月9日 10:00
    • 已标记为答案 Shu 2017 2015年10月9日 10:00
    2015年9月7日 5:57