Here is my code:
ifstream ifile;
list<unsigned char> fbinary;
ifile.open(filename, ios::binary);
if (ifile.fail() || !ifile.is_open())
return false;
ifile.seekg(0, ios::end);
int sz = ifile.tellg();
if (sz <= 0)
return false;
try
{
//Get Binary And Encrypt with XOR
ifile.seekg(0, ios::beg);
unsigned char temp = 0;
while (ifile)
{
ifile.read((char*)temp, sizeof(unsigned char));
temp ^= Encrypt_Key;
fbinary.push_back(temp);
}
ifile.close();
}
...
file.open
and getting file size don't fail. I don't know why ifile.read()
fires debug assertion.
Error Message:
Expression : buffer != nullptr