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

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

?? msvcdemodlg.cpp

?? 彩虹狗的例子 值得一提的是
?? CPP
?? 第 1 頁 / 共 3 頁
字號:
			}
		}
	}
	else
	{
		m_ulCurrentDogHandle=0;
	}
	m_iDogIndex=0;
	m_bCallOpenFirstInLocal = false;

	m_strResult.Format("Close dog succeeded!");
	UpdateData(FALSE);
	
}


void CMSVCDEMODlg::OnButtonVerifyPassword() 
{
	
	HRESULT	hrReturnCode;
	UCHAR	ucVerifyCount;
	
	UpdateData(TRUE);
	if (m_ulCurrentDogHandle == 0)
	{
		m_strResult.Format("There is no invalid dog handle.\nYou should call OpenDog firstly!");
		UpdateData(FALSE);
		return;
	}
	if (m_strPassword.GetLength()<8)
	{
		m_strResult.Format("The length of password can not be less than 8!");
		UpdateData(FALSE);
		return ;
	}
	memset(m_cPassword, 0, 128);
	memcpy(m_cPassword, m_strPassword, m_strPassword.GetLength());
	//Call RC_VerifyPassword to verify User or Developer password
	hrReturnCode = 	rc_VerifyPassword(m_ulCurrentDogHandle,m_ucPasswordType,m_cPassword,&ucVerifyCount);
	if (hrReturnCode == S_OK)
	{
		if( RC_PASSWORDTYPE_USER == m_ucPasswordType)
		{
			m_strResult.Format("Verify user password succeeded!");
		}
		else if(RC_PASSWORDTYPE_DEVELOPER == m_ucPasswordType)
		{
			m_strResult.Format("Verify developer password succeeded!");
		}
	}
	else
	{
		if( RC_PASSWORDTYPE_USER == m_ucPasswordType)
		{
			m_strResult.Format("Verify user password failed!\nThe verify count left is %d \nThe error code is 0X%X",ucVerifyCount,hrReturnCode);
		}
		else if(RC_PASSWORDTYPE_DEVELOPER == m_ucPasswordType)
		{
			m_strResult.Format("Verify developer password failed!\nThe verify count left is %d \nThe error code is 0X%X",ucVerifyCount,hrReturnCode);
		}
	}
	UpdateData(FALSE);

}

void CMSVCDEMODlg::OnButtonChangePassword() 
{
	
	HRESULT	hrReturnCode;
		
	UpdateData(TRUE);
	if (m_ulCurrentDogHandle == 0)
	{
		m_strResult.Format("There is no invalid dog handle.\nYou should call OpenDog firstly!");
		UpdateData(FALSE);
		return;
	}
	if (m_strPassword.GetLength()<8)
	{
		m_strResult.Format("The length of password can not be less than 8!");
		UpdateData(FALSE);
		return;
	}
	memset(m_cPassword, 0, 128);
	memcpy(m_cPassword, m_strPassword, m_strPassword.GetLength());//Get the password
	//Call RC_ChangePassword to Change the password.
	hrReturnCode = 	rc_ChangePassword(m_ulCurrentDogHandle,m_ucPasswordType,m_cPassword);
	if (hrReturnCode == S_OK)
	{
		if( RC_PASSWORDTYPE_USER == m_ucPasswordType)
		{
			m_strResult.Format("Change user password succeeded!");
		}
		else if(RC_PASSWORDTYPE_DEVELOPER == m_ucPasswordType)
		{
			m_strResult.Format("Change developer password succeeded!");
		}
	}
	else
	{
		if( RC_PASSWORDTYPE_USER == m_ucPasswordType)
		{
			m_strResult.Format("Change user password failed!\nThe error code is 0X%X",hrReturnCode);
		}
		else if(RC_PASSWORDTYPE_DEVELOPER == m_ucPasswordType)
		{
			m_strResult.Format("Change developer password failed!\nThe error code is 0X%X",hrReturnCode);
		}
	}
	UpdateData(FALSE);
	
}

void CMSVCDEMODlg::OnButtonSetKey() 
{
	UCHAR	ucKey[16]={0x41,0x42,0x43,0x44,0x45,0x46,0x47,0x48,0x49,0x4A,0x4B,0x4C,0x4D,0x4E,0x4F,0x50};//"ABCDEFGHIJKLMNOP"
	HRESULT	hrReturnCode;
	int		iCount;
	CString strTmp;
	UpdateData(TRUE);

	if (m_ulCurrentDogHandle == 0)
	{
		m_strResult.Format("There is no invalid dog handle.\nYou should call OpenDog firstly!");
		UpdateData(FALSE);
		return;
	}
	//Call RC_SetKey to set the signature key or AES key.
	hrReturnCode = rc_SetKey(m_ulCurrentDogHandle,m_ucKeyType,ucKey,16);
	if (hrReturnCode!=S_OK)
	{
		if(RC_KEY_AES == m_ucKeyType)
		{
			m_strResult.Format("Set AES Key failed!\nThe error code is 0X%X.",hrReturnCode);
		}
		else if(RC_KEY_SIGN == m_ucKeyType)
		{
			m_strResult.Format("Set Sign Key failed!\nThe error code is 0X%X.",hrReturnCode);
		}

	}
	else
	{
		if(RC_KEY_AES == m_ucKeyType)
		{
			m_strResult.Format("Set AES Key succeeded!\nThe key is:\n");
		}
		else if(RC_KEY_SIGN == m_ucKeyType)
		{
			m_strResult.Format("Set Sign Key succeeded!\nThe key is:\n");
		}
		for(iCount=0;iCount<16;iCount++)
		{
			strTmp.Format("0X%02X " ,ucKey[iCount]);
			m_strResult = m_strResult+strTmp;
			if((iCount+1)%8==0)
			{
				strTmp.Format("\n");
				m_strResult = m_strResult+strTmp;
			}
		}
	}
	UpdateData(FALSE);
}

void CMSVCDEMODlg::OnButtonSignData() 
{
	HRESULT	hrReturnCode;
	int		iCount;
	CString strTmp;
	UCHAR	ucSignData[256];
	ULONG	ulSignLen=16;
	ULONG	ulResultLen=16;
	UCHAR	ucSignResult[16];

	UpdateData(TRUE);

	if (m_ulCurrentDogHandle == 0)
	{
		m_strResult.Format("There is no invalid dog handle.\nYou should call OpenDog firstly!");
		UpdateData(FALSE);
		return;
	}
	for(iCount=0;iCount<256;iCount++)
	{
		ucSignData[iCount]=iCount;
	}
	//Call RC_SignData to get the result of signature
	hrReturnCode=rc_SignData(m_ulCurrentDogHandle,ucSignData,ulSignLen,ucSignResult,&ulResultLen);
	if (hrReturnCode!=S_OK)
	{

		m_strResult.Format("Sign data failed!\nThe error code is 0X%X.",hrReturnCode);

	}
	else
	{

		m_strResult.Format("Sign data succeeded!\nThe result is:\n");
		for(iCount=0;iCount<16;iCount++)
		{
			strTmp.Format("0X%02X " ,ucSignResult[iCount]);
			m_strResult = m_strResult+strTmp;
			if((iCount+1)%8==0)
			{
				strTmp.Format("\n");
				m_strResult = m_strResult+strTmp;
			}
		}
	}
	UpdateData(FALSE);	
}

void CMSVCDEMODlg::OnButtonEncryptData() 
{
	HRESULT	hrReturnCode;
	int		iCount;
	CString strTmp;
	UCHAR	ucEncryptData[16];
	ULONG	ulEncryptLen=16;
	ULONG	ulResultLen=16;
	UCHAR	ucResult[16];

	UpdateData(TRUE);

	if (m_ulCurrentDogHandle == 0)
	{
		m_strResult.Format("There is no invalid dog handle.\nYou should call OpenDog firstly!");
		UpdateData(FALSE);
		return;
	}
	for(iCount=0;iCount<16;iCount++)
	{
		ucEncryptData[iCount]=iCount;
	}
	//Call RC_EncryptData to get the result of encryption
	hrReturnCode=rc_EncryptData(m_ulCurrentDogHandle,ucEncryptData,ulEncryptLen,ucResult,&ulResultLen);
	if (hrReturnCode!=S_OK)
	{

		m_strResult.Format("Encrypt data failed!\nThe error code is 0X%X.",hrReturnCode);

	}
	else
	{

		m_strResult.Format("Encrypt data succeeded!\nThe encrypted data is:\n");
		for(iCount=0;iCount<16;iCount++)
		{
			strTmp.Format("0X%02X " ,ucEncryptData[iCount]);
			m_strResult = m_strResult+strTmp;
			if((iCount+1)%8==0)
			{
				strTmp.Format("\n");
				m_strResult = m_strResult+strTmp;
			}
		}

		strTmp.Format("\nThe result is:\n");
		m_strResult = m_strResult+strTmp;
		for(iCount=0;iCount<16;iCount++)
		{
			m_ucEncryptedData[iCount]=ucResult[iCount];//store the encrypted data

			strTmp.Format("0X%02X " ,ucResult[iCount]);
			m_strResult = m_strResult+strTmp;
			if((iCount+1)%8==0)
			{
				strTmp.Format("\n");
				m_strResult = m_strResult+strTmp;
			}
		}
	}
	UpdateData(FALSE);	
}

void CMSVCDEMODlg::OnButtonConvertData() 
{
	HRESULT	hrReturnCode;
	int		iCount;
	UCHAR	ucConvertData[16];
	ULONG	ulLen=16;
	ULONG	ulResult;
	CString strTmp;

	UpdateData(TRUE);

	if (m_ulCurrentDogHandle == 0)
	{
		m_strResult.Format("There is no invalid dog handle.\nYou should call OpenDog firstly!");
		UpdateData(FALSE);
		return;
	}
	for(iCount=0;iCount<16;iCount++)
	{
		ucConvertData[iCount]=0x41+iCount;
	}
	//Call RC_ConvertData to get the result of convertion
	hrReturnCode = rc_ConvertData(m_ulCurrentDogHandle,ucConvertData,ulLen,&ulResult);

	if (hrReturnCode!=S_OK)
	{
		m_strResult.Format("Convert data failed!\nThe error code is 0X%X.",hrReturnCode);
	}
	else
	{

		m_strResult.Format("Convert data succeeded!\n\nThe data is:\n");
		for(iCount=0;iCount<16;iCount++)
		{
			strTmp.Format("0X%02X " ,ucConvertData[iCount]);
			m_strResult = m_strResult+strTmp;
			if((iCount+1)%8==0)
			{
				strTmp.Format("\n");
				m_strResult = m_strResult+strTmp;
			}
		}
		strTmp.Format("\nThe result is: DEC:%u  HEX:0X%X",ulResult,ulResult);
		m_strResult = m_strResult+strTmp;
	}
	UpdateData(FALSE);
	
}

void CMSVCDEMODlg::OnButtonDecryptData() 
{

	HRESULT	hrReturnCode;
	int		iCount;
	CString strTmp;
	ULONG	ulDecryptLen=16;
	ULONG	ulResultLen=16;
	UCHAR	ucResult[16];

	UpdateData(TRUE);

	if (m_ulCurrentDogHandle == 0)
	{
		m_strResult.Format("There is no invalid dog handle.\nYou should call OpenDog firstly!");
		UpdateData(FALSE);
		return;
	}
	//Call RC_DecryptData to get the result of decryption
	hrReturnCode=rc_DecryptData(m_ulCurrentDogHandle,m_ucEncryptedData,ulDecryptLen,ucResult,&ulResultLen);
	if (hrReturnCode!=S_OK)
	{

		m_strResult.Format("Decrypt data failed!\nThe error code is 0X%X.",hrReturnCode);

	}
	else
	{

		m_strResult.Format("Decrypt data succeeded!\nThe decrypted data is:\n");
		for(iCount=0;iCount<16;iCount++)
		{
			strTmp.Format("0X%02X " ,m_ucEncryptedData[iCount]);
			m_strResult = m_strResult+strTmp;
			if((iCount+1)%8==0)
			{
				strTmp.Format("\n");
				m_strResult = m_strResult+strTmp;
			}
		}

		strTmp.Format("\nThe Result is:\n");
		m_strResult = m_strResult+strTmp;
		for(iCount=0;iCount<16;iCount++)
		{

			strTmp.Format("0X%02X " ,ucResult[iCount]);
			m_strResult = m_strResult+strTmp;
			if((iCount+1)%8==0)
			{
				strTmp.Format("\n");
				m_strResult = m_strResult+strTmp;
			}
		}
	}
	UpdateData(FALSE);	

	
}

void CMSVCDEMODlg::OnButtonGetRandom() 
{
	HRESULT	hrReturnCode;
	int		iCount;
	UCHAR	ucRandomData[256];
	UCHAR	ucLen=255;
	CString strTmp;

	UpdateData(TRUE);

	if (m_ulCurrentDogHandle == 0)
	{
		m_strResult.Format("There is no invalid dog handle.\nYou should call OpenDog firstly!");
		UpdateData(FALSE);
		return;
	}
	//Call RC_GetRandom to get the random data 
	hrReturnCode = rc_GetRandom(m_ulCurrentDogHandle,ucRandomData,ucLen);
	if (hrReturnCode!=S_OK)
	{
		m_strResult.Format("Get random data failed!\nThe error code is 0X%X.",hrReturnCode);
	}
	else
	{

		m_strResult.Format("Get random data succeeded!\n\nThe random data is\n");
		for(iCount=0;iCount<ucLen;iCount++)
		{
			strTmp.Format("0X%02X " ,ucRandomData[iCount]);
			m_strResult = m_strResult+strTmp;
			if((iCount+1)%8==0)
			{
				strTmp.Format("\n");
				m_strResult = m_strResult+strTmp;
			}
		}
	}
	UpdateData(FALSE);
	
}

void CMSVCDEMODlg::OnButtonCreateDir() 
{
	HRESULT		hrReturnCode;
	USHORT		usDirSize = 266;	
	UpdateData(TRUE);

	if (m_ulCurrentDogHandle == 0)
	{
		m_strResult.Format("There is no invalid Dog handle.\nYou should call OpenDog first!");
		UpdateData(FALSE);
		return;
	}
	//Call RC_CreateDir to create directory file
	hrReturnCode = rc_CreateDir(m_ulCurrentDogHandle,m_sDirID,usDirSize);
	if (S_OK == hrReturnCode)

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
精品国产污网站| 色哟哟亚洲精品| 久久久精品黄色| 国产剧情在线观看一区二区| 久久久99久久精品欧美| 成年人国产精品| 亚洲国产视频一区二区| 日韩免费观看2025年上映的电影 | 国产精品视频yy9299一区| 国产98色在线|日韩| 亚洲丝袜美腿综合| 欧美精品第一页| 国产在线国偷精品免费看| 亚洲国产精品成人综合色在线婷婷| 成人免费视频视频在线观看免费 | 欧美偷拍一区二区| 日本色综合中文字幕| 久久久精品免费网站| 色综合久久综合网97色综合| 日韩福利电影在线| 国产三级精品三级| 在线观看一区二区精品视频| 麻豆精品蜜桃视频网站| 中文字幕视频一区二区三区久| 91福利精品第一导航| 久久国产精品免费| 国产精品萝li| 欧美一区二区三区性视频| 大桥未久av一区二区三区中文| 亚洲成在线观看| 日本一区二区在线不卡| 在线不卡的av| 99riav久久精品riav| 久久99国产乱子伦精品免费| 亚洲精品网站在线观看| 久久免费国产精品| 欧美伦理影视网| 97se亚洲国产综合在线| 久久狠狠亚洲综合| 亚洲永久精品国产| 国产亚洲婷婷免费| 欧美一区永久视频免费观看| 成人av资源站| 国产美女一区二区| 丝袜亚洲精品中文字幕一区| 亚洲欧洲日韩综合一区二区| 精品日产卡一卡二卡麻豆| 欧美三级在线视频| 91蜜桃网址入口| 国产精品一级黄| 久久99最新地址| 亚洲大型综合色站| 一区二区三区资源| 国产精品理伦片| 久久久99久久| 久久亚洲一区二区三区四区| 欧美一区二区三区男人的天堂| 日本精品裸体写真集在线观看| 岛国av在线一区| 国产乱对白刺激视频不卡 | 精品一区二区三区免费| 婷婷久久综合九色综合伊人色| 亚洲精品视频观看| 国产精品二三区| 国产精品色在线| 国产丝袜在线精品| 久久久99精品久久| 国产亚洲欧美在线| 久久久久久97三级| 久久久久免费观看| www国产精品av| 26uuu国产日韩综合| 日韩欧美的一区二区| 日韩女优毛片在线| 精品日韩在线观看| 久久综合九色综合97婷婷女人 | 亚洲成av人片一区二区梦乃| 日韩理论片中文av| 亚洲精品成a人| 亚洲国产乱码最新视频| 亚洲一二三四在线| 五月天欧美精品| 日本成人中文字幕在线视频| 免费日本视频一区| 国产综合色精品一区二区三区| 久久99精品久久久久久动态图| 免费精品99久久国产综合精品| 日本欧美在线看| 精品一二三四在线| 国产成人啪免费观看软件| 成人美女视频在线观看| av成人老司机| 欧美视频日韩视频| 欧美一区午夜精品| 国产日韩亚洲欧美综合| 日本一区免费视频| 亚洲视频一二三区| 亚洲精品一二三四区| 日韩高清在线不卡| 国产成人av资源| 91美女蜜桃在线| 在线播放中文一区| 久久综合九色欧美综合狠狠| 国产精品剧情在线亚洲| 亚洲成人777| 国产综合色在线| 色综合激情五月| 精品日韩成人av| 中文字幕亚洲电影| 日本免费新一区视频| 国产盗摄视频一区二区三区| 91麻豆精品在线观看| 欧美日本国产一区| 久久人人爽人人爽| 洋洋成人永久网站入口| 精品亚洲porn| 色偷偷久久人人79超碰人人澡 | 在线观看成人小视频| 日韩欧美中文字幕一区| 国产精品久久久99| 蜜桃在线一区二区三区| 99久久婷婷国产综合精品| 欧美日韩亚洲丝袜制服| 国产夜色精品一区二区av| 亚洲电影视频在线| 成人久久视频在线观看| 欧美精品aⅴ在线视频| 欧美国产乱子伦| 麻豆精品视频在线观看视频| 色婷婷精品久久二区二区蜜臀av| 精品国产免费久久| 一级中文字幕一区二区| 国产白丝网站精品污在线入口 | 欧美大尺度电影在线| ㊣最新国产の精品bt伙计久久| 蜜桃一区二区三区在线| 色综合久久久久综合体| 国产香蕉久久精品综合网| 免费视频一区二区| 欧美在线免费观看亚洲| 国产精品人成在线观看免费 | 国产91露脸合集magnet| 在线91免费看| 亚洲国产综合在线| 91女神在线视频| 日本一区二区成人在线| 麻豆精品一二三| 91精品欧美综合在线观看最新 | 性做久久久久久久免费看| 99精品桃花视频在线观看| 国产欧美一区二区三区鸳鸯浴| 免费在线看一区| 欧美年轻男男videosbes| 亚洲色图19p| 99久久精品国产导航| 国产欧美一区二区精品久导航 | 91精品欧美久久久久久动漫| 亚洲国产一二三| 欧美三级韩国三级日本三斤 | 日韩中文欧美在线| 在线亚洲高清视频| 一区二区三区免费在线观看| 99精品国产99久久久久久白柏| 亚洲国产精华液网站w | 99久久精品情趣| 中文字幕巨乱亚洲| 成人av电影在线播放| 国产精品久久久久久久久搜平片| 成人免费观看av| 国产日韩成人精品| 成人av在线影院| 1024成人网色www| 在线视频欧美区| 偷拍自拍另类欧美| 日韩免费一区二区| 国产老肥熟一区二区三区| 日本一区二区三级电影在线观看| 成人福利电影精品一区二区在线观看| 欧美高清在线一区| 日本高清不卡视频| 亚洲va欧美va人人爽午夜| 欧美精品日韩一区| 激情综合五月婷婷| 久久亚洲免费视频| 欧美性色综合网| 五月开心婷婷久久| 精品国产a毛片| 成人高清在线视频| 一区二区三区久久久| 欧美日韩成人一区二区| 另类小说综合欧美亚洲| 久久久久国色av免费看影院| 99视频有精品| 午夜国产精品影院在线观看| 日韩精品一区二区三区三区免费| 国产成人精品影院| 亚洲国产cao| 国产日韩欧美a| 欧美性猛片xxxx免费看久爱| 理论电影国产精品|