IWMSPlayer::get_Port
The get_Port method retrieves the port number of the client that is receiving content from the server.
HRESULT get_Port(
long* pVal
);
Arguments
pVal |
[out] Pointer to a long that contains the port number. |
Return Value
If the method succeeds, it returns S_OK. If it fails, it returns an HRESULT error code.
Return code |
Number |
Meaning |
---|---|---|
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 player 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
#include <windows.h>
#include <atlbase.h> // Includes CComVariant.
#include "wmsserver.h"
// Declare variables and interfaces.
IWMSServer *pServer;
IWMSPlayers *pPlayers;
IWMSPlayer *pPlayer;
HRESULT hr;
CComVariant varIndex;
long lCount;
long lValue;
// 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 an IWMSPlayers interface
// and retrieve the total count of current connections.
hr = pServer->get_Players(&pPlayers);
if (FAILED(hr)) goto EXIT;
hr = pPlayers->get_Count(&lCount);
if (FAILED(hr)) goto EXIT;
// Retrieve information about each client connection.
for (long x = 0; x < lCount; x++)
{
varIndex = x;
hr = pPlayers->get_Item(varIndex, &pPlayer);
if (FAILED(hr)) goto EXIT;
// Retrieve the port of the client.
hr = pPlayer->get_Port(&lValue);
if (FAILED(hr)) goto EXIT;
// Release temporary COM objects.
pPlayer->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.