我在做一个项目的时候,用到了登录框,在登录框中只有两个BUTTON控件,OK和CANCEL.其ok的代码如下:
void CLodinDlg11::OnOK()
{
// TODO: Add extra validation here
UpdateData(TRUE);
if(m_UserName=="")
{
MessageBox("请输入用户姓名");
return;
}
if(m_Pwd=="")
{
MessageBox("请输入密码");
return;
}
CUsers user;
user.GetDate(m_UserName);
if(user.GetPwd()!=m_Pwd)
{
MessageBox("密码错误,无法登录!");
return;
}
CDialog::OnOK();
}
可是在运行时有这样的错误,请高手们帮忙解释一下。
先出现一个象messagebox()的确定对话框,对话框而且是出现两次。然后提示说
“ox00406c16”指令引用的
“ox00000000”内存,该内存不能为“read”。
我该如何调试啊。
void CLodinDlg11::OnOK()
{
// TODO: Add extra validation here
UpdateData(TRUE);
if(m_UserName=="")
{
MessageBox("请输入用户姓名");
return;
}
if(m_Pwd=="")
{
MessageBox("请输入密码");
return;
}
CUsers user;
user.GetDate(m_UserName);
if(user.GetPwd()!=m_Pwd)
{
MessageBox("密码错误,无法登录!");
return;
}
CDialog::OnOK();
}
可是在运行时有这样的错误,请高手们帮忙解释一下。
先出现一个象messagebox()的确定对话框,对话框而且是出现两次。然后提示说
“ox00406c16”指令引用的
“ox00000000”内存,该内存不能为“read”。
我该如何调试啊。
解决方案 »
- 求助:关于将数组中的内容加入CString变量中
- 请教怎么在对话框类的头文件中包含头文件“ClockEx.h”
- vs2008连接SQL2005 EXPRESS的问题!!!急
- 50分:使窗口区域无效的那个函数 SetClip什么的怎么写了?我在CSDN里找不到
- 求针式打印机打印解决方案?
- 求两篇rfc的中文文档
- 窗口A原来是在最前面的 但后来被窗口B覆盖了,窗口A会收到什么消息? 窗口A如何判断自己是在最前面而没有被其他窗口覆盖?(已知道窗口A句柄)
- 关于猫和来电显示的问题
- 我的VS.net安装有问题,应该有人碰到过吧
- 得到外部程序listbox的数据失败
- 数据库编程中改变数据源的问题,急!
- 简单问题一个标准函数SafeArrayGetElement,不知道什么意思
请给我指点一下,谢谢了
user.GetDate(m_UserName);
if(user.GetPwd()!=m_Pwd)
{
MessageBox("密码错误,无法登录!");
return;
}
CDialog::OnOK();
// CUser是一个记录集吧,用于从数据库中提取出用户表中的用户信息,
// 这个应该没问题,你把logoin对话框的弹出放在那儿呢?
// CXXXApp::InitInstance()中,如果是这样,也没错。
// 将CXXXApp::InitInstance()贴出来看看。
// 总体评价,没错,至少看不出来。if(m_UserName=="")
{
MessageBox("请输入用户姓名");
return;
}把 m_UserName == "" 改成(""会被构造成一个临时的CString对象,很烦的)
m_UserName == _T( "" );
或
if ( m_UserName.IsEmpty() )
{
//...
}