IXMLDOMNodeList::get_length

The get_length method indicates the number of items in the IXMLDOMNodeList collection.

HRESULT get_length(
long* lListLength
);

Arguments

lListLength

[out] Pointer to a long representing the number of items in the collection.

Return Value

If the method succeeds, it returns S_OK. If it fails, it returns an HRESULT error code.

Example

The following example retrieves a pointer to an IXMLDOMNodeListIXMLDOMNodeList Interface and then uses its get_length method to support iteration.

#include “wmsserver.h”
#include <atlbase.h> // Includes CComVariant and CComBSTR.

// Declare variables.
IWMSServer*           pServer;
IXMLDOMDocument*      pPlaylist;
IXMLDOMNodeList*      pXMLNodeList;
IXMLDOMNode*          pXMLNode;

HRESULT               hr;
CComVariant           varAttValue;
CComVariant           varValue;
CComBSTR              bstrName;
long                  lCount;
VARIANT_BOOL          bIsSuccessful;

// Initialize the COM library and retrieve a pointer
// to an IWMSServer interface.
hr = CoInitialize(NULL);
hr = CoCreateInstance(CLSID_WMSServer, NULL, CLSCTX_ALL, 
       IID_IWMSServer, (void**)&pServer);
if (FAILED(hr)) goto EXIT;

// Create the playlist object.
hr = pServer->CreatePlaylist(&pPlaylist);

// Load a sample playlist file.
varValue = "c:\\wmpub\\wmroot\\simple.wsx";
hr = pPlaylist->load(varValue, &bIsSuccessful);
if (FAILED(hr)) goto EXIT;

if (bIsSuccessful)
{
    // Retrieve all elements with the node name "media".
    bstrName = "media";
    hr = pPlaylist->getElementsByTagName(bstrName, &pXMLNodeList);
    if (FAILED(hr)) goto EXIT;

    // Retrieve total number of nodes in the list.
    hr = pXMLNodeList->get_length(&lCount);
    if (FAILED(hr)) goto EXIT;

    // Display node value associated with each node 
    // in the collection.
    for (int i = 0; i < lCount; i++)
    {
        hr = pXMLNodeList->get_item(i, &pXMLNode);
        if (FAILED(hr)) goto EXIT;
        hr = pXMLNode->get_nodeValue(&varAttValue);
        if (FAILED(hr)) goto EXIT;

        // Release temporary COM objects.
        pXMLNode->Release();
    }
}

EXIT:
    // TODO: Release temporary COM objects and uninitialize COM.

Requirements

Header: wmsserver.h.

Library: WMSServerTypeLib.dll.

Platform: Windows Server 2003 family, Windows Server 2008 family.

See Also

Reference

IXMLDOMNodeList Interface

Concepts

XML DOM Methods (C++)