现在载入跟现实已实现,现在想增加一个CListCtrl,用来显示选择的树形节点的XML属性。
比如XML文件为:
<SCL xmlns="http://www.iec.ch/61850/2003/SCL" revision="A" version="2007">
<Header id="123.ICD" revision="1" toolID="ICDTOOL" version="1.0">
<History>
</History>
</Header>
</SCL>
选择SCL时,List显示xmlns等于多少,revision等于多少等等,选择Header时也是。
现在遇到的情况是在OnSelchangedTree中添加
HTREEITEM hr = m_TreeCtrl.GetSelectedItem();//获得选中节点句柄
CString strSelectName = m_TreeCtrl.GetItemText(hr);//获得选中节点名
IXMLDOMNodeListPtr m_pList = m_pDocRoot->getElementsByTagName((_bstr_t)strSelectName);
最后一句执行后选择SCL节点时m_pList.length为0,其中m_pDocRoot = m_pDoc->documentElement;
请问哪里出了问题吗?或者提供一下用别的方法实现功能。谢谢。
比如XML文件为:
<SCL xmlns="http://www.iec.ch/61850/2003/SCL" revision="A" version="2007">
<Header id="123.ICD" revision="1" toolID="ICDTOOL" version="1.0">
<History>
</History>
</Header>
</SCL>
选择SCL时,List显示xmlns等于多少,revision等于多少等等,选择Header时也是。
现在遇到的情况是在OnSelchangedTree中添加
HTREEITEM hr = m_TreeCtrl.GetSelectedItem();//获得选中节点句柄
CString strSelectName = m_TreeCtrl.GetItemText(hr);//获得选中节点名
IXMLDOMNodeListPtr m_pList = m_pDocRoot->getElementsByTagName((_bstr_t)strSelectName);
最后一句执行后选择SCL节点时m_pList.length为0,其中m_pDocRoot = m_pDoc->documentElement;
请问哪里出了问题吗?或者提供一下用别的方法实现功能。谢谢。
解决方案 »
- 看了C++ Primer还比要看C++编程思想吗?
- Clist POSTION的 有效性?
- VC网络编程
- 一个不知道错误的错误
- 关于REBARBANDINFO的问题!!!
- 谁给我做一个屏幕取词的软件,像金山词霸一样,但我要取一个软件的Listbox中一某一行的值,如果测试成功,我提供视频教学站点,可下载所有
- 请问谁有telnet客户端源代码?应该是对话框形式的.
- 要学精通VC++,最好走什么样的曲线?
- 用CreateProcess和ShellExecuteEx创建进程,效果有什么不同吗?
- vc++程序员有必要现在就向vc.net方向转型吗?大家发表一下意见?
- DNS服务器发查询包程序的应答包
- vc里的编辑框控件刷新
for (int i = 0; i < list->Getlength(); i++)
{
IXMLDOMElementPtr element = list->item[i];
IXMLDOMNamedNodeMapPtr pMap;
element->get_attributes(&pMap);
long len;
pMap->get_length(&len);
for (long i=0; i<len; i++)
{
IXMLDOMNodePtr pNode;
pMap->get_item(i, &pNode);
_variant_t name = pNode->GetnodeName();// node name.eg
_variant_t val = pNode->GetnodeValue();// node vale.eg
SysFreeString(strName);
pNode->Release();
}
pMap->Release();
}
看网上说强制转换不行,有什么好的别的方法吗
2、如果保存接口指针,一定要记得引用计数,保存到项数据时增加接口的引用计数,项删除时一定要减少接口的引用计数
3、保存接口指针的好处是永远不用担心重名的问题,肯定一一对应,而且不需要每次点击树项时都去重复搜索,何况搜索到的结果还不一定正确。
4、接口指针不要强制转换,而应该全部采取 QueryInterface 的方式获得。
<SCL xmlns="http://www.iec.ch/61850/2003/SCL" revision="A" version="2007" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.iec.ch/61850/2003/SCL C:/SASysTools/schema/scl/SCL.xsd">
比如这样
1 XMLTree.exe 是一个示例演示如何使用 MSXML DOM 接口,从 c + + 应用程序。
http://support.microsoft.com/kb/246230#top2 VC使用Cup生成、解析xml资料
http://download.csdn.net/source/9928773 CMarkup官网地址
http://www.firstobject.com/