最近在做的一个项目用到了资源加密,也就是将加密好的文本以自定义资源的形式放入VC的项目中,然后在项目中对它进行解密,这样就达到了保护资料的目的。
加密算法我用的是AES,密钥自己指定,由于是对称加密算法,我使用相同的密钥对密文解密,就能得到明文,为公司项目做的第一个小功能,很开心,呵呵。
本来以为资源加密不好实现,纠结了我一个星期,终于搞出来了,很有成就感啊
相关代码如下:
HRSRC hRes; //Define a Handle of Resource HINSTANCE hInst = AfxGetResourceHandle(); //Return a HINSTANCE value BOOL bResult = FALSE; DWORD dwLen = 0; // typedef unsigned long DWORD hRes = FindResource(hInst, MAKEINTRESOURCE(IDR_TEXT), _T(“TEXT”)); if (hRes != NULL) { dwLen = SizeofResource(hInst, hRes); if (dwLen > 0) { HGLOBAL hGlob = LoadResource(hInst, hRes); if (hGlob != NULL) { LPVOID lpData = LockResource(hGlob); if (lpData != NULL) { //Access the Resouce by the value: lpData } } } }