⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 checkdlg.cpp

📁 库存管理系统
💻 CPP
字号:
// CheckDlg.cpp : implementation file
//

#include "stdafx.h"
#include "库存管理系统.h"
#include "CheckDlg.h"
#include "MenuDlg.h"

#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CCheckDlg dialog


CCheckDlg::CCheckDlg(CWnd* pParent /*=NULL*/)
	: CDialog(CCheckDlg::IDD, pParent)
{
	//{{AFX_DATA_INIT(CCheckDlg)
	stPosition = _T("");
	stID = _T("");
	stPassword = _T("");
	pConn = ((CMyApp *)AfxGetApp())->m_nConnection;
	count = 0;
	//}}AFX_DATA_INIT
}


void CCheckDlg::DoDataExchange(CDataExchange* pDX)
{
	CDialog::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CCheckDlg)
	DDX_Control(pDX, CHECKIN_POSITION, coPosition);
	DDX_CBString(pDX, CHECKIN_POSITION, stPosition);
	DDX_Text(pDX, CHECKIN_ID, stID);
	DDX_Text(pDX, CHECKIN_PASSWORD, stPassword);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CCheckDlg, CDialog)
	//{{AFX_MSG_MAP(CCheckDlg)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CCheckDlg message handlers

void CCheckDlg::OnOK() 
{
	// TODO: Add extra validation here
	
	//验证是否填满登录所需信息
	UpdateData(TRUE);
	if(stPosition==_T("")||stID==_T("")||stPassword==_T(""))
		AfxMessageBox(_T("用户登录信息未填满!\n请填完整后再点击登录按钮!"),MB_ICONINFORMATION);
	else
	{
		try
	{
		_RecordsetPtr pRecord;
		pRecord.CreateInstance("ADODB.Connection");
		_variant_t ra;
		CString strSql="select * from 用户"; 
        BSTR bstrSQL = strSql.AllocSysString(); 
		// 执行SQL语句得到一个记录集把其指针赋值给m_pRecordset 
		pRecord=pConn->Execute(bstrSQL,&ra,adCmdText);
		bool i=0;
		while(!pRecord->adoEOF && i==0)//遍历所有记录
		{
			_variant_t Theid; //VARIANT数据类型 
			Theid =pRecord->GetCollect("ID");//得到字段id的值
			if(Theid== _variant_t(stID))
			{
				_variant_t Thepos;
				_variant_t Thekey;
				Thepos =pRecord->GetCollect("Position");
				Thekey =pRecord->GetCollect("PassWord");
				if(Thepos== _variant_t(stPosition) && Thekey== _variant_t(stPassword)) 
				{
				//在此处编写连接进入主窗口
				CMenuDlg dlg;
				CDialog::OnOK();
				dlg.DoModal();
				i=1;
				}
				else
					pRecord->MoveNext();
			}
			else
				pRecord->MoveNext();//转到下一条纪录
		}
		if(i==0)
		{if(pRecord->adoEOF && count<3)
		{AfxMessageBox(_T("没有该帐户或密码填写不正确或没选对登陆身份!"),MB_ICONINFORMATION);
		count++;
		}
		else if(count>=3)
		{AfxMessageBox(_T("你已经连续输入了三次错误,已无权限继续输入!"),MB_ICONINFORMATION);
		
		::CoUninitialize();
		CDialog::OnOK();
		}
		}
		}
		catch(_com_error &e)
		{
			::AfxMessageBox( e.ErrorMessage());
		}
			
		}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -