Article ID: 135765
Article Last Modified on 11/21/2006
void CServerDoc::DoWriteFmtUserTypeStg(LPSTORAGE lpStorage)
{
LPOLEOBJECT lpObject = (LPOLEOBJECT)GetInterface(&IID_IOleObject);
ASSERT(lpObject != NULL);
CLSID clsid;
lpObject->GetUserClassID(&clsid);
LPTSTR pszUserType = NULL;
OleRegGetUserType(clsid, USERCLASSTYPE_FULL, (LPOLESTR
*)&pszUserType);
if (pszUserType)
{
WriteClassStg(lpStorage, clsid);
WriteFmtUserTypeStg(lpStorage, m_cfPrivate,
(LPOLESTR)pszUserType);
CoTaskMemFree(pszUserType);
}
}
void CServerDoc::Serialize(CArchive& ar)
{
ASSERT(m_pRoot != NULL);
if(IsEmbedded() && ar.IsStoring())
{
ASSERT(m_lpRootStg != NULL);
DoWriteFmtUserTypeStg(m_lpRootStg);
}
SerializeFontInfo(ar);
m_pRoot->Serialize(ar);
}
Additional query words: alwaysupdate
Keywords: kbprb KB135765