📄 userfilenamedlg.cpp
字号:
// UserFileNameDlg.cpp : implementation file
//
#include "stdafx.h"
#include "CisoCA.h"
#include "UserFileNameDlg.h"
#include "UserMakeCertSheet.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif
extern CInfoReport InfoReport;
extern DWORD dwMoudleID;
/////////////////////////////////////////////////////////////////////////////
// CUserFileNameDlg dialog
IMPLEMENT_DYNCREATE(CUserFileNameDlg, CPropertyPage)
CUserFileNameDlg::CUserFileNameDlg(CWnd* pParent /*=NULL*/)
: CPropertyPage(CUserFileNameDlg::IDD)
{
//{{AFX_DATA_INIT(CUserFileNameDlg)
m_certFileName = _T("");
m_pvkFileName = _T("");
//}}AFX_DATA_INIT
pSheet = (CPropertySheet*)pParent;
}
void CUserFileNameDlg::DoDataExchange(CDataExchange* pDX)
{
CPropertyPage::DoDataExchange(pDX);
//{{AFX_DATA_MAP(CUserFileNameDlg)
DDX_Text(pDX, IDC_USER_CERT_FILENAME, m_certFileName);
DDX_Text(pDX, IDC_USER_PVK_FILENAME, m_pvkFileName);
//}}AFX_DATA_MAP
}
BEGIN_MESSAGE_MAP(CUserFileNameDlg, CPropertyPage)
//{{AFX_MSG_MAP(CUserFileNameDlg)
ON_WM_SHOWWINDOW()
//}}AFX_MSG_MAP
END_MESSAGE_MAP()
/////////////////////////////////////////////////////////////////////////////
// CUserFileNameDlg message handlers
BOOL CUserFileNameDlg::OnSetActive()
{
((CUserMakeCertSheet*)pSheet)->SetWizardButtons(PSWIZB_BACK|PSWIZB_FINISH);
return CPropertyPage::OnSetActive();
}
BOOL CUserFileNameDlg::OnWizardFinish()
{
// 检查证书文件名
((CEdit*)GetDlgItem(IDC_USER_CERT_FILENAME))->GetWindowText(m_certFileName);
if(m_certFileName.GetLength() > 4)
{
CString str="";
try
{
str = m_certFileName.Right(4);
if(str.CompareNoCase(".crt") == 0 || str.CompareNoCase(".p12") == 0)
{
m_certFileName = m_certFileName.Mid(0,m_certFileName.GetLength()-4);
}
}
catch(CMemoryException e)
{}
}
if(m_certFileName.IsEmpty())
{
AfxMessageBox("证书的文件名为空,请重新输入!");
((CUserMakeCertSheet*)pSheet)->SetActivePage(this);
return FALSE;
}
// 检查私钥文件名
if(((CUserMakeCertSheet*)pSheet)->m_pExtInfo->certFormat == 1)
{
((CEdit*)GetDlgItem(IDC_USER_PVK_FILENAME))->GetWindowText(m_pvkFileName);
if(m_pvkFileName.GetLength() > 4)
{
CString str="";
try
{
str = m_pvkFileName.Right(4);
if(str.CompareNoCase(".pem") == 0)
{
m_pvkFileName = m_pvkFileName.Mid(0,m_pvkFileName.GetLength()-4);
}
}
catch(CMemoryException e)
{}
}
if(m_pvkFileName.IsEmpty())
{
AfxMessageBox("私钥的文件名为空,请重新输入!");
((CUserMakeCertSheet*)pSheet)->SetActivePage(this);
return FALSE;
}
if(m_certFileName.CompareNoCase(m_pvkFileName) == 0 )
{
AfxMessageBox("证书与私钥的文件名重名,请重新输入!");
((CUserMakeCertSheet*)pSheet)->SetActivePage(this);
return FALSE;
}
}
return TRUE;
}
BOOL CUserFileNameDlg::OnInitDialog()
{
CPropertyPage::OnInitDialog();
// TODO: Add extra initialization here
return TRUE; // return TRUE unless you set the focus to a control
// EXCEPTION: OCX Property Pages should return FALSE
}
void CUserFileNameDlg::OnShowWindow(BOOL bShow, UINT nStatus)
{
CPropertyPage::OnShowWindow(bShow, nStatus);
CString strCertName;
CString strKeyName ;
// TODO: Add your message handler code here
// p12
if(((CUserMakeCertSheet*)pSheet)->m_pExtInfo->certFormat == 0)
{
strCertName = ((CUserMakeCertSheet*)pSheet)->m_pBaseInfo->m_name
+"_Cert.p12";
strKeyName = "";
((CEdit*)GetDlgItem(IDC_USER_PVK_FILENAME))->EnableWindow(FALSE);
}
else
{
strCertName = ((CUserMakeCertSheet*)pSheet)->m_pBaseInfo->m_name
+"_Cert.crt";
strKeyName = ((CUserMakeCertSheet*)pSheet)->m_pBaseInfo->m_name
+"_Key.pem";
((CEdit*)GetDlgItem(IDC_USER_PVK_FILENAME))->EnableWindow(TRUE);
}
//
((CEdit*)GetDlgItem(IDC_USER_CERT_FILENAME))->SetWindowText(strCertName);
((CEdit*)GetDlgItem(IDC_USER_PVK_FILENAME))-> SetWindowText(strKeyName );
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -