/*
* XMLNodeList.cpp
* Copyright (c) 2009 Antillia.com TOSHIYUKI ARAI. ALL RIGHTS RESERVED.
*/
// SOL9
// 2009/04/23
// Sample program to use XMLDocument::getElementsByTagName() method
// Run as XMLNodeList.exe Application.xml
#include <sol/COMInitializer.h>
#include <sol/xml/XMLDocument.h>
void _tmain(int argc, TCHAR** argv)
{
if (argc !=2) {
_tprintf(_T("Usage:\n%s Application.xml\n"), argv[0]);
return;
}
if (GetFileAttributes(argv[1]) == 0xffffffff) {
_tprintf(_T("File not found %s\n"), argv[1]);
return;
}
try {
COMInitializer comInitializer;
{
SOL::XMLDocument xmlDocument;
xmlDocument.open(argv[1]);
_bstr_t xml = "";
xmlDocument.getXML(xml);
_tprintf(_T("XML:\n%s\n"), (const TCHAR*)xml);
{
const TCHAR* name = _T("LayoutManager");
_tprintf(_T("1 xmlDocument.getElementsByTagName(\"%s\")\n"), name);
XMLNodeList nodeList;
if (xmlDocument.getElementsByTagName(name, nodeList)) {
_tprintf(_T("2 OK, getElementsByTagName\n"));
nodeList.dump();
} else {
_tprintf(_T("3 Not found\n"));
}
}
{
const TCHAR* name = _T("Button");
_tprintf(_T("4 xmlDocument.getElementsByTagName(\"%s\")\n"), name);
XMLNodeList nodeList;
if (xmlDocument.getElementsByTagName(name, nodeList)) {
_tprintf(_T("5 OK, getElementsByTagName\n"));
nodeList.dump();
} else {
_tprintf(_T("6 Not found\n"));
}
}
}
} catch (HRESULT hr) {
_tprintf(_T("Exception %x\n"), hr);
} catch (...) {
_tprintf(_T("Exception %x\n"), GetLastError());
}
}
|