VC ++的TinyXML问题

时间:2014-06-09 09:21:50

标签: c++ visual-c++ tinyxml

我正在收集netstat信息。该程序正在运行,但在tinyxml for tag中,它显示为null,而在控制台应用程序中,相同的程序成功运行

char command[50];

TiXmlElement* msg31 = new TiXmlElement( "Port" );
TiXmlElement childText0( "Type" );
TiXmlNode* childNode0;
CString sTemp;

strcpy( command, "netstat -aon | findstr 3306" );

sTemp.Format(_T("%s"), system(command));
childText0.value = "Mysql_port" ;           
childText0.LinkEndChild(new TiXmlText(GetCharArray(sTemp)));
childNode0 = msg31->InsertEndChild( childText0 );               
childText0.Clear();
net->LinkEndChild(msg31);

这个程序运行成功。但唯一的问题是在xml中它显示空值。 xml的输出如下。代码有什么问题?

XML的输出(你可以看到Mysql_port为null)

            <Network>
            <Port>
                <Mysql_port>(null)</Mysql_port>
            </Port>
        </Network>

1 个答案:

答案 0 :(得分:0)

system()的返回值是int,更具体地说是执行程序的退出代码,如果程序成功则该假定为零。

所以,是的,那是一个空指针。

请参阅this有关如何获取输出的问题。