如何读取一个被加密过的文件,不需要解密,只是将数据读取并存放在缓存区内.
比如aa.cri文件,SIZE大概为2000字节,现在我要读取它的数据:
CFile MyResultFile;
CFileException MyException;
char *resultStr;
DWORD dwLenght; if(MyResultFile.Open(this->m_EncypytionFilePathStr, CFile::modeRead, &MyException))
{
dwLenght = MyResultFile.GetLength();
resultStr = (char *)malloc((int)dwLenght);
MyResultFile.Read(resultStr,(int)dwLenght);
MyResultFile.Close();
}
这样文件中被加密的数据可以存放在缓存resultStr中吗?
为什么我测试出来读取普通文本可以,但是加密的文件就失败了....
请高人指点,谢谢!
比如aa.cri文件,SIZE大概为2000字节,现在我要读取它的数据:
CFile MyResultFile;
CFileException MyException;
char *resultStr;
DWORD dwLenght; if(MyResultFile.Open(this->m_EncypytionFilePathStr, CFile::modeRead, &MyException))
{
dwLenght = MyResultFile.GetLength();
resultStr = (char *)malloc((int)dwLenght);
MyResultFile.Read(resultStr,(int)dwLenght);
MyResultFile.Close();
}
这样文件中被加密的数据可以存放在缓存resultStr中吗?
为什么我测试出来读取普通文本可以,但是加密的文件就失败了....
请高人指点,谢谢!
解决方案 »
- 关于libjingle与mfc的问题
- MFC的程序,如何支持ATL ?
- 大家会不会遇到一些只有实际经验才能帮助到你的问题?
- 请问用ado连接SQLServer这样写对吗?
- 大家来顶一下263网络集团如何?
- 奇怪的CreateWindowEx:返回0
- 如何将CString转成WCHAR *型变量?
- 请教高人,我在 一台没有装SQL SERVER 2000的机器上安装SQL SERVER 2000的内核(MSDE)时为是么要重新启动机器呢?
- 我今天写了一个查看程序行数的东东,看了一下我们正在做的一个基于SDK的工程,居然有177919行,好恐怖
- 一个像Check控件一样的CListCtl控件
- Unhandled exception in xxxxx.exe(libspeexdsp.dll):0xC0000005 Access Violation 在线等
- 关于托盘图标
----------------文件就是文件,不管是什么格式、是否加密,读取都是一样的。---------------我本也这么认为.失败是:本来被加密的文件中应该有2K左右的数据,内容我自己知道.
但是从加密文件中读取出来的数据在没解密前放在缓冲区中,我用打印出来应该也是2K左右的乱码,但是现实却是只有2个乱码,大小不一.我本来是打算任何再解密的.发现在解密时解密函数报错.我想问题应该出在被我读取的数据本身就不对,所以才无法解密.