利用Markup修改VegaPrime的ACF

利用XMLMarkup.h,修改Vege PrimeACF文件。

<AcfRoot>

<vp:Object name="ZhiHuiSuo">

.......

    <vp:setStaticEnable>false</vp:setStaticEnable>

    <vp:setFileName>11.flt</vp:setFileName>

........

</vp:Object>

</AcfRoot>

 

这是ACF文件中,一个OBJECT部分代码。

 

vp:Object为父节点名称。

name为父节点属性。

"ZhiHuiSuo"name属性的值。

<vp:setFileName>vp:Object下一个子节点的名称。

11.flt<vp:setFileName>的值。

 

VC添加Markup类。

Markup常用函数:

Load//加载XML

ResetMainPos()//重置光标位置

FindElem  定位到下一个元素,可能和一个标签名或路径匹配。

IntoElem   进入当前主位置的下一级,当前的位置变为父位置。

GetAttrib  得到当前节点属性值。

FindChildElem 定位到当前节点子节点,参数为子节点名称。

SetChildData 设置当前节点子节点的值

 

利用上面函数,修改  

<vp:setFileName>11.flt</vp:setFileName><vp:setFileName>22.flt</vp:setFileName>

 

bool XMLChangeModlePos(CString XMLName)

{

 

    BOOL bLoadXml=false;

    bLoadXml=MyXml->Load(XMLName);

    if (bLoadXml)

    {

       CString strAttrib = _T("");

       MyXml->ResetMainPos();

       MyXml->FindElem();

       MyXml->IntoElem();

       while (MyXml->FindElem("vp:Object"))

       {

           strAttrib = MyXml->GetAttrib("name");

           if (strAttrib=="ZhiHuiSuo")

           {

              while(MyXml->FindChildElem("vp:setFileName"))

              {                                                                    

                  MyXml->SetChildData("22.flt",0);

                  MyXml->Save(XMLName);

                  break;

              }

           }

       }

    }else{

       return false;

    }  

    return true;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值