読む必要が無いと判断されて呼ばれないようです。
エラー等にするにはOnOpenDocument等で独自に処理するしかないようです。
例)
BOOL CHMXDoc::OnOpenDocument(LPCTSTR lpszPathName)
{
CFileStatus cfs;
if(CFile::GetStatus(lpszPathName,cfs)
&& cfs.m_size==0)
{//サイズが0だとSerializeが呼ばれないのでチェックします。
AfxMessageBox("ファイルの中身がありません。(;_;)",MB_OK|MB_ICONSTOP);
return FALSE;
}
if (!CDocument::OnOpenDocument(lpszPathName))
return FALSE;
// TODO: この位置に固有の作成用コードを追加してください
return TRUE;
}