Si tu travailles en MFC, il faut refaire ton propre menu save, faire le code d'enregistrement de l'archive et appeler la méthode sérialize() inchangée.
ex :
void CSimpleBaseDoc::OnFileMysave()
{
char szFilters[] = "defaut Dir (*.ext)|*.ext|";
char szTitre[256] = "un titre";
char szExt[] = "ext";
char szFileName[256];
strcpy(szFileName, "chemin par defaut");
CFileDialog dlg( FALSE, szExt, szFileName, OFN_LONGNAMES |
OFN_NONETWORKBUTTON | OFN_HIDEREADONLY
| OFN_NOCHANGEDIR,
szFilters );
OPENFILENAME& ofn = dlg.GetOFN();
ofn.lpstrTitle = szTitre;
if( dlg.DoModal() == IDOK )
{
// Crée l'archive ::STORE et appelle Serialize du document
CFile fic;
fic.Open((LPCTSTR)dlg.GetPathName(), CFile::modeCreate | CFile::modeWrite);
CArchive archive(&fic, CArchive::store);
Serialize(archive);
archive.Close();
fic.Close();
SetModifiedFlag(FALSE);
}