亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? usbsopage.cpp

?? 實現了數字證書的制作、SSL安全通訊、加解密操作等功能
?? CPP
字號:
// UsbSoPage.cpp : implementation file
//

#include "stdafx.h"
#include "UsbKey.h"
#include "UsbSoPage.h"
#include "usbinfopage.h"
#ifdef _DEBUG
#define new DEBUG_NEW
#undef THIS_FILE
static char THIS_FILE[] = __FILE__;
#endif

/////////////////////////////////////////////////////////////////////////////
// CUsbSoPage property page

IMPLEMENT_DYNCREATE(CUsbSoPage, CPropertyPage)

CUsbSoPage::CUsbSoPage() : CPropertyPage(CUsbSoPage::IDD)
{
	//{{AFX_DATA_INIT(CUsbSoPage)
	//}}AFX_DATA_INIT
	m_handle=((CUsbKeyApp * )AfxGetApp())->m_handle;
}

CUsbSoPage::~CUsbSoPage()
{
}

void CUsbSoPage::DoDataExchange(CDataExchange* pDX)
{
	CPropertyPage::DoDataExchange(pDX);
	//{{AFX_DATA_MAP(CUsbSoPage)
	DDX_Control(pDX, IDC_LIST_SO, m_List);
	DDX_Control(pDX, IDC_STATIC_SOLOCK, m_SoIcon);
	//}}AFX_DATA_MAP
}


BEGIN_MESSAGE_MAP(CUsbSoPage, CPropertyPage)
	//{{AFX_MSG_MAP(CUsbSoPage)
	ON_BN_CLICKED(IDC_B_UNLOCK, OnBUnlock)
	ON_BN_CLICKED(IDC_BInitKey, OnBInitKey)
	ON_BN_CLICKED(IDC_B_SELPATH, OnBSelpath)
	ON_BN_CLICKED(IDC_B_WRITE, OnBWrite)
	ON_BN_CLICKED(IDC_B_SET, OnBSet)
	ON_BN_CLICKED(IDC_RADIO_ANYONE, OnRadioAnyone)
	ON_BN_CLICKED(IDC_RADIO_PIN, OnRadioPin)
	ON_BN_CLICKED(IDC_RADIO_SOPIN, OnRadioSopin)
	ON_BN_CLICKED(IDC_RADIO_NONE, OnRadioNone)
	ON_BN_CLICKED(IDC_RADIO_ANYONE2, OnRadioAnyone2)
	ON_BN_CLICKED(IDC_RADIO_PIN2, OnRadioPin2)
	ON_BN_CLICKED(IDC_RADIO_SOPIN2, OnRadioSopin2)
	ON_BN_CLICKED(IDC_RADIO_NONE2, OnRadioNone2)
	ON_BN_CLICKED(IDC_B_FORMAT, OnBFormat)
	//}}AFX_MSG_MAP
END_MESSAGE_MAP()

/////////////////////////////////////////////////////////////////////////////
// CUsbSoPage message handlers
BOOL CUsbSoPage::OnInitDialog() 
{
	CPropertyPage::OnInitDialog();
	GetUsbState();
	return TRUE;  // return TRUE unless you set the focus to a control
	              // EXCEPTION: OCX Property Pages should return FALSE
}

void CUsbSoPage::OnBUnlock() //解鎖,同時設置用戶嘗試次數>0,否則不許嘗試
{
	// TODO: Add your control notification handler code here
	CString soPin=((CUsbKeyApp * )AfxGetApp())->m_SoPin;
	if(USBKey_UnlockPin(m_handle,0,(UCHAR *)soPin.GetBuffer(0))==FALSE)//解鎖
		m_List.AddMsg("解鎖失敗",M_ERROR);
	else
		m_List.AddMsg("解鎖成功");
	GetUsbState();	
	
}


void CUsbSoPage::OnBInitKey() //初始化usb
{
	// TODO: Add your control notification handler code here
	CString strUsb;
	GetDlgItemText(IDC_EDIT_UPWD,strUsb);
	if(strUsb=="")
	{
		m_List.AddMsg("輸入為空",M_WARING);
		return;
	}
	UCHAR out[100]={0};
	BeginWaitCursor(); 
	if(USBKey_InitKey(m_handle,(UCHAR *)strUsb.GetBuffer(0))==FALSE)//改變密碼為11111111
	{
		EndWaitCursor();
		m_List.AddMsg("初始化usb失敗",M_ERROR);
	}
	else
	{
		EndWaitCursor();
		m_List.AddMsg("初始化usb成功");
		((CUsbKeyApp * )AfxGetApp())->m_ChangeKey=true;
	}

}

void CUsbSoPage::OnBSelpath() //選擇證書路徑
{
	// TODO: Add your control notification handler code here
	LPITEMIDLIST pidlRoot=NULL; 
	SHGetSpecialFolderLocation(m_hWnd,CSIDL_DRIVES ,&pidlRoot); 
	BROWSEINFO bi;   //必須傳入的參數,下面就是這個結構的參數的初始化 
	CString strDisplayName;   //用來得到,你選擇的活頁夾路徑,相當于提供一個緩沖區 
	bi.hwndOwner=GetSafeHwnd();   //得到父窗口Handle值 
	bi.pidlRoot=0;   //這個變量就是我們在上面得到的. 
	bi.pszDisplayName=strDisplayName.GetBuffer(MAX_PATH+1);   //得到緩沖區指針, 
	bi.lpszTitle="選擇證書文件夾";   //設置標題 
	bi.ulFlags=BIF_RETURNONLYFSDIRS    ;   //設置標志 
	bi.lpfn=NULL; 
	bi.lParam=0; 
	bi.iImage=0;   //上面這個是一些無關的參數的設置,最好設置起來, 
	ITEMIDLIST * pidl;  
	pidl=SHBrowseForFolder(&bi);   //打開對話框 
	if(!pidl)
		return;
	SHGetPathFromIDList(pidl,bi.pszDisplayName);	
	strDisplayName.ReleaseBuffer();   //和上面的GetBuffer()相對應 
	m_Path=strDisplayName;
	SetDlgItemText(IDC_EDIT_PATH,m_Path);
	
}

void CUsbSoPage::OnBWrite() //寫入證書
{
	// TODO: Add your control notification handler code here
	// TODO: Add your control notification handler code here
	//公鑰證書文件,ID:1001 dwCertType=1
	if(m_Path=="")
	{
		m_List.AddMsg("路徑為空",M_WARING);
		return;
	}
	//讀取私鑰數據并解密私鑰
/*	CString m_Pwd;
	GetDlgItemText(IDC_EDIT_PRIPWD,m_Pwd);
	if(m_Pwd=="")
	{
		m_List.AddMsg("密碼為空",M_WARING);
		return;
	}
*/
	BeginWaitCursor();
	BYTE	certbuff[3000]={0},keybuff[3000]={0};
	UINT	len;
	CString fname=m_Path+"\\UserCert.crt";
	CFile f(fname,CFile::modeRead);
	len=f.Read(certbuff,3000);
	f.Close();


	if(!USBKey_WriteCert(m_handle,1,certbuff,len))
	{
		m_List.AddMsg("寫入公鑰文件失敗!",M_ERROR);
		EndWaitCursor();
		return;
	}

	fname=m_Path+"\\UserKey.crt";
	f.Open(fname,CFile::modeRead);
	len=f.Read(keybuff,3000);
	f.Close();

	//私鑰文件ID:1002
	if(USBKey_WriteCert(m_handle,0,keybuff,len)==FALSE)
		m_List.AddMsg("寫入私鑰文件失敗!",M_ERROR);
	else
	{
		m_List.AddMsg("寫文件成功!");	
		((CUsbKeyApp * )AfxGetApp())->m_ChangeKey=true;
	}

	EndWaitCursor();
}

void CUsbSoPage::OnBSet() //設置屬性
{
	// TODO: Add your control notification handler code here
	if(((CUsbInfoPage *)((CPropertySheet *)AfxGetMainWnd())->GetPage(0))->SetProperty(&m_create,&m_del))
		m_List.AddMsg("設置成功");
}


void CUsbSoPage::OnRadioAnyone() 
{
	// TODO: Add your control notification handler code here
	m_create=0;
	
}

void CUsbSoPage::OnRadioPin() 
{
	// TODO: Add your control notification handler code here
	m_create=1;
	
}

void CUsbSoPage::OnRadioSopin() 
{
	// TODO: Add your control notification handler code here
	m_create=2;
	
}

void CUsbSoPage::OnRadioNone() 
{
	// TODO: Add your control notification handler code here
	m_create=7;
	
}

void CUsbSoPage::OnRadioAnyone2() 
{
	// TODO: Add your control notification handler code here
	m_del=0;

}

void CUsbSoPage::OnRadioPin2() 
{
	// TODO: Add your control notification handler code here
	m_del=1;

}

void CUsbSoPage::OnRadioSopin2() 
{
	// TODO: Add your control notification handler code here
	m_del=2;
	
}

void CUsbSoPage::OnRadioNone2() 
{
	// TODO: Add your control notification handler code here
	m_del=7;
	
}

void CUsbSoPage::GetUsbState()
{
	// TODO: Add extra initialization here
	for(int i=0;i<8;i++)
	{
		((CButton *)GetDlgItem(10017+i))->SetCheck(0);
	}
	BYTE max,current;
	if(((CUsbInfoPage *)((CPropertySheet *)AfxGetMainWnd())->GetPage(0))->GetAccessInfo(&m_create,&m_del,&max,&current)==false)
		return;
	if(current==0)
		m_SoIcon.SetIcon(AfxGetApp()->LoadIcon(IDI_ICON_LOCK));
	else
		m_SoIcon.SetIcon(AfxGetApp()->LoadIcon(IDI_ICONUNLOCK));

	if(m_create==7) ((CButton *)GetDlgItem(10017+3))->SetCheck(1);
	else
		((CButton *)GetDlgItem(10017+m_create))->SetCheck(1);
	if(m_del==7) ((CButton *)GetDlgItem(10021+3))->SetCheck(1);
	else
		((CButton *)GetDlgItem(10021+m_del))->SetCheck(1);
	if(((CUsbKeyApp * )AfxGetApp())->m_VerifySo!=true)//驗證失敗
	{
		GetDlgItem(IDC_B_FORMAT)->EnableWindow(0);
		GetDlgItem(IDC_B_SET)->EnableWindow(0);
		GetDlgItem(IDC_BInitKey)->EnableWindow(0);
		GetDlgItem(IDC_B_SELPATH)->EnableWindow(0);
		GetDlgItem(IDC_B_WRITE)->EnableWindow(0);
		GetDlgItem(IDC_B_UNLOCK)->EnableWindow(0);
		GetDlgItem(IDC_EDIT_UPWD)->EnableWindow(0);
		GetDlgItem(IDC_EDIT_PATH)->EnableWindow(0);
		GetDlgItem(IDC_EDIT_PRIPWD)->EnableWindow(0);
		GetDlgItem(IDC_LIST_SO)->EnableWindow(0);
		for(int i=10017;i<10025;i++)
			GetDlgItem(i)->EnableWindow(0);
	}
	else
	{
		GetDlgItem(IDC_B_FORMAT)->EnableWindow(1);
		GetDlgItem(IDC_B_SET)->EnableWindow(1);
		GetDlgItem(IDC_BInitKey)->EnableWindow(1);
		GetDlgItem(IDC_B_SELPATH)->EnableWindow(1);
		GetDlgItem(IDC_B_WRITE)->EnableWindow(1);
		GetDlgItem(IDC_B_UNLOCK)->EnableWindow(1);
		GetDlgItem(IDC_EDIT_UPWD)->EnableWindow(1);
		GetDlgItem(IDC_EDIT_PATH)->EnableWindow(1);
		GetDlgItem(IDC_EDIT_PRIPWD)->EnableWindow(1);
		GetDlgItem(IDC_LIST_SO)->EnableWindow(1);
		for(int i=10017;i<10025;i++)
			GetDlgItem(i)->EnableWindow(1);
	}

}

BOOL CUsbSoPage::OnSetActive() 
{
	// TODO: Add your specialized code here and/or call the base class
	GetUsbState();
	return CPropertyPage::OnSetActive();
}


void CUsbSoPage::OnBFormat() 
{
	// TODO: Add your control notification handler code here
	if(((CUsbInfoPage *)((CPropertySheet *)AfxGetMainWnd())->GetPage(0))->Format())
	{
		m_List.AddMsg("格式化成功");
		((CUsbKeyApp * )AfxGetApp())->m_ChangeKey=true;
	}
	else
		m_List.AddMsg("格式化失敗",M_ERROR);
}

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产69精品久久久久777| 中文字幕中文在线不卡住| 99视频一区二区| 国产高清一区日本| 国产美女一区二区| 青青草97国产精品免费观看无弹窗版| 亚洲精品亚洲人成人网| 国产精品免费aⅴ片在线观看| 久久九九久久九九| 国产喂奶挤奶一区二区三区| 国产欧美日韩在线看| 国产目拍亚洲精品99久久精品| 中文在线一区二区| 国产精品高清亚洲| 亚洲欧美电影一区二区| 亚洲人成精品久久久久久| 亚洲丝袜美腿综合| 一区二区三区在线不卡| 亚洲午夜久久久久中文字幕久| 一区二区三区毛片| 免费人成网站在线观看欧美高清| 偷偷要91色婷婷| 久久精品国内一区二区三区| 精品一区二区三区在线视频| 国产一区二区在线影院| 99久久久久久99| 欧美日韩免费一区二区三区视频 | 亚洲成人动漫在线观看| 日韩国产精品大片| 国产精品自在欧美一区| av亚洲精华国产精华| 欧美亚洲一区二区在线| 欧美一区二区三区啪啪| 久久精品水蜜桃av综合天堂| 国产精品对白交换视频| 日韩电影一二三区| 成人在线视频首页| 欧美日韩一区不卡| 欧美国产欧美亚州国产日韩mv天天看完整| 国产精品电影一区二区| 日韩福利电影在线观看| 国产91精品一区二区| 欧美在线免费视屏| 久久久久久久久久看片| 一区二区三区在线看| 狠狠色综合播放一区二区| www.亚洲免费av| 宅男在线国产精品| 亚洲视频免费看| 91高清视频在线| 日韩一区二区中文字幕| 中文字幕制服丝袜一区二区三区 | 亚洲一区二区中文在线| 国产综合久久久久久久久久久久| 91免费版在线看| 久久久综合网站| 亚洲高清三级视频| 99久久综合99久久综合网站| 欧美不卡视频一区| 五月婷婷欧美视频| 91久久精品一区二区三| 久久女同精品一区二区| 日欧美一区二区| 色综合中文字幕国产| 国产亚洲一二三区| 精品一区二区免费视频| 欧美日韩中文精品| 一区二区三区中文免费| 成人免费的视频| 久久久久久久久久久久久久久99| 日韩精品电影一区亚洲| 在线观看亚洲成人| 亚洲精品久久嫩草网站秘色| 国产宾馆实践打屁股91| 久久久综合九色合综国产精品| 五月婷婷另类国产| 91精品国产综合久久精品app| 亚洲免费观看高清完整版在线观看| 国产成人精品一区二区三区四区 | 国产成人激情av| 久久久精品2019中文字幕之3| 免费人成在线不卡| 日韩欧美区一区二| 毛片一区二区三区| 日韩欧美一级片| 美国三级日本三级久久99| 日韩欧美激情四射| 久久99久久99| 国产日韩精品一区二区三区在线| 精品一区二区三区日韩| 精品国产乱码91久久久久久网站| 亚洲chinese男男1069| 成人亚洲一区二区一| 欧美精品一区二区蜜臀亚洲| 青娱乐精品视频| 日韩丝袜情趣美女图片| 国产在线播放一区三区四| 久久久蜜臀国产一区二区| 丁香激情综合国产| 一区二区三区在线视频观看58| 91成人在线免费观看| 日日噜噜夜夜狠狠视频欧美人| 日韩欧美一级精品久久| 处破女av一区二区| 午夜精品久久久久久久久久| 日韩欧美国产电影| 99久久免费国产| 日韩一区欧美二区| 国产日韩精品一区二区浪潮av | 欧美videos大乳护士334| 国产伦精品一区二区三区免费迷 | 成人高清视频在线| 亚洲一级片在线观看| 26uuu精品一区二区| 9i在线看片成人免费| 日本欧美肥老太交大片| 国产精品卡一卡二| 91精品国产综合久久久久久 | 中文幕一区二区三区久久蜜桃| 9i看片成人免费高清| 免费观看日韩av| 亚洲另类中文字| xfplay精品久久| 欧美日韩在线一区二区| 懂色中文一区二区在线播放| 午夜在线电影亚洲一区| 中文字幕一区不卡| 久久综合久久久久88| 欧美天堂一区二区三区| 成人伦理片在线| 久久激情五月激情| 亚洲国产精品久久不卡毛片| 国产精品视频第一区| 日韩欧美高清dvd碟片| 欧美视频在线一区二区三区 | 欧美日韩成人综合天天影院 | 在线视频欧美精品| 成人国产在线观看| 精品一区二区三区香蕉蜜桃 | 精品一区二区免费| 亚洲综合一二区| 国产精品久99| 久久精品在这里| 欧美成人精品福利| 欧美一区二区三区日韩视频| 在线精品视频免费观看| av在线不卡观看免费观看| 成人午夜伦理影院| 国产精品一区二区男女羞羞无遮挡| 日韩激情视频在线观看| 亚洲成人激情综合网| 香蕉久久一区二区不卡无毒影院| 亚洲视频免费观看| 亚洲另类色综合网站| 成人欧美一区二区三区| **性色生活片久久毛片| 国产精品成人免费| 亚洲特黄一级片| 亚洲伦理在线精品| 亚洲乱码中文字幕综合| 亚洲免费伊人电影| 亚洲女性喷水在线观看一区| 亚洲卡通动漫在线| 亚洲私人黄色宅男| 亚洲一区国产视频| 午夜电影久久久| 蜜臀av在线播放一区二区三区| 日韩和欧美一区二区三区| 美女在线一区二区| 国产一区二区三区四区五区美女| 国产乱码精品一区二区三区五月婷| 国内精品在线播放| 成人禁用看黄a在线| 91香蕉视频mp4| 欧美日韩精品是欧美日韩精品| 欧美日韩高清在线| 久久中文字幕电影| 国产精品福利影院| 亚欧色一区w666天堂| 日韩成人免费看| 国产精品 欧美精品| 91丨九色丨蝌蚪富婆spa| 在线观看三级视频欧美| 91精品国产美女浴室洗澡无遮挡| 欧美mv日韩mv国产网站app| 日本一区二区久久| 亚洲一区二区三区精品在线| 石原莉奈在线亚洲三区| 国产精品综合视频| 欧美伊人久久大香线蕉综合69| 91精品国产黑色紧身裤美女| 国产欧美精品一区二区色综合朱莉| 国产精品第四页| 午夜精品久久久久久久99樱桃| 国内偷窥港台综合视频在线播放| 成人高清免费观看| 91精品综合久久久久久| 中文在线资源观看网站视频免费不卡| 亚洲图片欧美色图| 国产剧情一区二区|