I'm getting an exception thrown for CArchive. This is code that worked in a VS6 (COM) DLL that is being updated to VS8 (VS.NET 2005) and an MFC DLL (removed COM).
Relevant Code:
Code:CString strName = _T(""); CSequence* pSequence = NULL; CFile file; CFileException fe; CString msg; // open file if (!file.Open(strFilePath, CFile::modeRead | CFile::shareDenyWrite, &fe)) { // Error handling - no file open issues } CArchive ar(&file, CArchive::load); ar >> pSequence; // **EXCEPTION ar.Close(); file.Close();
Exception happens at the ar >> pSequence line.
For the CSequence class, the constructor with CArchive is a Serialize.
When it reads the files (created a long time ago, but still working on the older system), it throws an exception:Code:virtual void Serialize(CArchive& ar);
<filename> contained an unexpected objet.
Any ideas? Thoughts?
Is CArchive compatible with older version of CArchive? I'm guessing that's how those files were created in the first place.




Reply With Quote
