使用soui开发的mbc,只支持windows版本
w1146869587
2022-01-24 0408576e9da10015ffa9da0079b8c985113ce4b3
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
#include "StdAfx.h"
#include "MBVaultCatalogHlinkMgr.h"
 
 
CMBVaultCatalogHlinkMgr::CMBVaultCatalogHlinkMgr(void)
{
    RemoveAllVaultCatalogHlink();
}
 
 
CMBVaultCatalogHlinkMgr::~CMBVaultCatalogHlinkMgr(void)
{
    RemoveAllVaultCatalogHlink();
}
 
 
void  CMBVaultCatalogHlinkMgr:: GetVaultCatalogHlinkVector( CMBVaultCatalogHlinkVector &vectorCatalogHlink)
{  
    vectorCatalogHlink.clear();
    vectorCatalogHlink = m_vectorCatalogHlink;
}
 
 
bool  CMBVaultCatalogHlinkMgr::AddVaultCatalogHlink( CMBVaultCatalogHlink *pVaultCatalogHlink )
{
    if( NULL ==  pVaultCatalogHlink  )
        return false;
 
    m_vectorCatalogHlink.push_back(pVaultCatalogHlink);
 
    return true;  
}
 
// Çå³ýËùÓÐ
bool  CMBVaultCatalogHlinkMgr::RemoveAllVaultCatalogHlink()
{
    CMBVaultCatalogHlinkVector::iterator    it; 
    CMBVaultCatalogHlink *pVaultCatalogHlink = NULL;
 
    for( it = m_vectorCatalogHlink.begin();it != m_vectorCatalogHlink.end();it++ )
    {
        pVaultCatalogHlink = *it;
        delete pVaultCatalogHlink;
        pVaultCatalogHlink = NULL;        
    } 
 
    m_vectorCatalogHlink.clear();
    return true;   
}
 
bool CMBVaultCatalogHlinkMgr::ParseXml( CString strXml,CString strVaultID,CString strCatalogID,CString &strErrInfo  )
{
    if( strXml.IsEmpty() )
        return true;
 
 
    pugi::xml_document    xmlDoc;    
    if (!xmlDoc.load(strXml))   
    {  
        return false;
    }    
 
    pugi::xml_node objNode  = xmlDoc.child(_T("Body")).child(_T("Obj"));
     
    for(pugi::xml_node node = objNode; node; node = node.next_sibling(_T("Obj")))
    {
        CMBVaultCatalogHlink *pVaultCatalogHlink = new CMBVaultCatalogHlink();
 
        pVaultCatalogHlink->m_strCatalogID    = strCatalogID;           
        pVaultCatalogHlink->m_strClsID        = node.attribute(_T("ClassID")).value();              
        pVaultCatalogHlink->m_strObjID        = node.attribute(_T("ID")).value();               
        //pVaultCatalogHlink->m_strVID;                 // Í¬°æ±¾±êʶ
        pVaultCatalogHlink->m_strDisplayName = node.child_value(_T("Name"));        
        //pVaultCatalogHlink->m_strExtAttr;
        pVaultCatalogHlink->m_strCreator    = node.attribute(_T("CreatorID")).value();               
        pVaultCatalogHlink->m_strTLink        = node.attribute(_T("DTCreate")).value();              
        //pVaultCatalogHlink->m_nOrder;                 // ÏÔʾ´ÎÐò
        pVaultCatalogHlink->m_strVaultID      = strVaultID;            
        //pVaultCatalogHlink->m_strTags;               
 
 
        if( !AddVaultCatalogHlink( pVaultCatalogHlink ) )
        {
            delete pVaultCatalogHlink;
            pVaultCatalogHlink = NULL;
        }
         
    }  
 
    return true;
}