og()中加入下列代码:
m_edtPassword.SubclassDlgItem(IDC_EDIT_PASSWORD, this);
其目的是将控制与新类做关联。
之后在对话框的数据交换中将身份设为合法:
void CDlgInput::DoDataExchange(CDataExchange* pDX)
{
// 如果获取数据
// 注意:对于CPropertyPage类这里不需要
if( pDX- >m_bSaveAndValidate) 条件
if( pDX- >m_bSaveAndValidate)
{
g_bAuthorIdentity = TRUE;
}
CDialog::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CDlgInput)
DDX_Text(pDX, IDC_EDIT_PASSWORD, m_sPassword);
//}}AFX_DATA_MAP
}
这样,Password输入框就会受到保护。
(三) 需要注意的
问题 以上的方法仅针对VC程序,对于VB程序,需要借助VC做一个Password的ActiveX 控件,实现方法与上类似。同时以上程序在Visual C++6.0上通过,并且用黑客
程序 PWBTool测试通过。