IWMSOutgoingDistributionConnection::get_NetworkAddress

banner art

Previous Next

IWMSOutgoingDistributionConnection::get_NetworkAddress

The get_NetworkAddress method retrieves the network address of the client receiving the distributed content.

Syntax

  HRESULT get_NetworkAddress(
  BSTR*  pVal
);

Parameters

pVal

[out] Pointer to a BSTR that contains the network address.

Return Values

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

Return code Number Description
E_POINTER 0x80004003 pVal is a NULL pointer argument.

Remarks

The network address is returned by the socket on the Windows Media server. Therefore, the address can be that of the server receiving the content, but it can also be the address of the firewall, the network address translator, or the router, if these are in the network path.

Example Code

#include <windows.h>
#include <atlbase.h>    // Includes CComBSTR and CComVariant.
#include "wmsserver.h"

// Declare variables and interfaces.
IWMSServer                          *pServer;
IWMSOutgoingDistributionConnections *pConnections;
IWMSOutgoingDistributionConnection  *pConnection;

HRESULT         hr;
CComVariant     varIndex;
CComBSTR        bstrAddress;
long            lCount;

// 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;

// Retrieve a pointer to a collection of distribution
// connections and retrieve the total count of connections.
hr = pServer->get_OutgoingDistributionConnections(&pConnections);
if (FAILED(hr)) goto EXIT;
hr = pConnections->get_Count(&lCount);
if (FAILED(hr)) goto EXIT;

// Retrieve information about each distribution connection.
for (long x = 0; x < lCount; x++)
{
    varIndex = x;
    hr = pConnections->get_Item(varIndex, &pConnection);
    if (FAILED(hr)) goto EXIT;

    // Retrieve the IP address of the client.
    hr = pConnection->get_NetworkAddress(&bstrAddress);
    if (FAILED(hr)) goto EXIT;

    // Release temporary COM objects.
    pConnection->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

Previous Next