当用户名错误时,为什么GetErrorMessage会返回“密码错误”?

时间:2010-01-29 23:52:58

标签: c++ windows winapi wininet

GetErrorMessage(来自CInternetException)给出了以下内容:

使用错误的ftp服务器名称:
“错误!服务器名称或地址无法解析”

密码错误:
错误!密码不被允许

用户名不正确:
错误! 不允许使用密码< -----?用户名错误没有单独的消息?这是为了吗?

try
{
   pConnect = sess->GetFtpConnection(host, userName, password, port, FALSE );
}

catch (CInternetException* pEx) //incorrect user name displays incorrect password?
{
      TCHAR sz[1024];
      pEx->GetErrorMessage(sz, 1024);
      printf("ERROR!  %s\n", sz);
      pEx->Delete();
}

1 个答案:

答案 0 :(得分:13)

是的,这是有意的。典型的FTP服务器不会区分无效密码和无效用户名。这是出于安全原因,例如攻击者不能强迫他们发现有效的用户名。