📄 syslogindlg.cpp
字号:
// SysLogInDlg.cpp : implementation file
//
#include "stdafx.h"
#include "clientmain.h"
#include "SysLogInDlg.h"
#include <string>
#include <iostream>
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
using namespace std;
//IADOTierPtr g_pAdoServer;
IPos_ADOPtr g_pAdoServer;
/////////////////////////////////////////////////////////////////////////////
// CSysLogInDlg dialog
CSysLogInDlg::CSysLogInDlg(CWnd* pParent /*=NULL*/)
: CDialog(CSysLogInDlg::IDD, pParent)
{
//{{AFX_DATA_INIT(CSysLogInDlg)
m_strUserName = _T("");
m_strUserPsw = _T("");
//}}AFX_DATA_INIT
}
void CSysLogInDlg::DoDataExchange(CDataExchange* pDX)
{
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CSysLogInDlg)
DDX_Control(pDX, ID_LOGOK, m_ctlBtnOk);
DDX_Control(pDX, IDC_EDIT_USERPSW, m_ctlPsw);
DDX_Control(pDX, IDC_EDIT_USERNAME, m_ctlName);
DDX_Text(pDX, IDC_EDIT_USERNAME, m_strUserName);
DDX_Text(pDX, IDC_EDIT_USERPSW, m_strUserPsw);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CSysLogInDlg, CDialog)
//{{AFX_MSG_MAP(CSysLogInDlg)
ON_BN_CLICKED(ID_LOGOK, OnLogok)
ON_BN_CLICKED(ID_LOGCANCEL, OnLogcancel)
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CSysLogInDlg message handlers
void CSysLogInDlg::OnOK()
{
// TODO: Add extra validation here
//CDialog::OnOK();
}
void CSysLogInDlg::OnCancel()
{
// TODO: Add extra cleanup here
//CDialog::OnCancel();
}
void CSysLogInDlg::OnLogok()
{
// TODO: Add your control notification handler code here
UpdateData(TRUE);
//CString strName;
//CString strPsw;
CString strSql;
HRESULT hr;
if(m_strUserName =="")
{
MessageBox("用户名不能为空!", NULL, MB_OK);
m_ctlName.SetFocus();
m_ctlName.SetSel(0, -1);
return;
}
strSql = "Select * from T_Users where Name = '" + m_strUserName
+"' and Password = '" + m_strUserPsw +"'";
_bstr_t bstrSql(strSql);
hr = g_pAdoServer->OpenRecordset(bstrSql);
if(!SUCCEEDED(hr))
{
MessageBox("打开记录集失败!", "Client Error:", MB_OK);
return;
}
VARIANT_BOOL bEmpty;
hr = g_pAdoServer->get_Empty(&bEmpty);
if(bEmpty)
{
MessageBox("用户或密码输入不正确,请重新输入!", "Client Error:", MB_OK);
m_ctlName.SetFocus();
m_ctlName.SetSel(0, -1);
// 注意,必须关闭记录集后,才能重新执行打开,否则将出错
g_pAdoServer->CloseRecordset();
return;
}
string strName;
string strPsw;
string strUserType;
strName = (_bstr_t)g_pAdoServer->Field["Name"];
strPsw = (_bstr_t)g_pAdoServer->Field["Password"];
strUserType = (_bstr_t)g_pAdoServer->Field["UserType"];
g_strUserName = strName.c_str();
g_strUserName.TrimLeft();
g_strUserName.TrimRight();
g_strUserPsw = strPsw.c_str();
g_strUserPsw.TrimLeft();
g_strUserPsw.TrimRight();
g_strUserType = strUserType.c_str();
g_strUserType.TrimLeft();
g_strUserType.TrimRight();
CDialog::OnOK();
}
BOOL CSysLogInDlg::PreTranslateMessage(MSG* pMsg)
{
// TODO: Add your specialized code here and/or call the base class
if(pMsg->message == WM_KEYDOWN)
{
if(pMsg->wParam == VK_RETURN)
{
//CEdit *pEdit=(CEdit*)GetDlgItem(IDC_EDIT_USERNAME);
if(pMsg->hwnd == m_ctlName.GetSafeHwnd())
{
m_ctlPsw.SetFocus();
m_ctlPsw.SetSel(0, -1);
return FALSE;
}
if(pMsg->hwnd == m_ctlPsw.GetSafeHwnd())
{
m_ctlBtnOk.SetFocus();
return FALSE;
}
}
}
return CDialog::PreTranslateMessage(pMsg);
}
void CSysLogInDlg::OnLogcancel()
{
// TODO: Add your control notification handler code here
CDialog::OnCancel();
}
BOOL CSysLogInDlg::OnInitDialog()
{
CDialog::OnInitDialog();
// TODO: Add extra initialization here
// 为对话框添加图标
HICON hIcon = AfxGetApp()->LoadIcon(IDI_DLGICON);
ASSERT(hIcon != NULL);
SetIcon(hIcon, TRUE);
m_ctlName.SetFocus();
return FALSE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -