IWMSPublishingPoint2 Interface
You can use the IWMSPublishingPoint2 interface to enable Startup Profile on a publishing point.
Note
This interface is available only on Windows Server 2003, Enterprise Edition with Service Pack 1; Windows Server 2003, Datacenter Edition with Service Pack 1; and Windows Server 2008.
In addition to the methods inherited from IWMSPublishingPoint, the IWMSPublishingPoint2 interface exposes the following methods.
Method |
Description |
---|---|
get_AllowStartupProfile |
Retrieves a Boolean value that indicates whether the publishing point allows the use of Startup Profile. |
put_AllowStartupProfile |
Specifies a Boolean value that indicates whether the publishing point allows the use of Startup Profile. |
Example
The following example illustrates how to retrieve a pointer to an IWMSPublishingPoint2 interface.
#include <windows.h>
#include <atlbase.h> // Includes CComBSTR.
#include "wmsserver.h"
// Declare variables and interfaces.
IWMSServer *pServer;
IWMSPublishingPoints *pPubPoints;
IWMSPublishingPoint *pPubPoint;
IWMSPublishingPoint2 *pPubPoint2;
HRESULT hr;
CComVariant varIndex;
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 the IWMSPublishingPoints
// interface and retrieve the number of publishing points.
hr = pServer->get_PublishingPoints(&pPubPoints);
if (FAILED(hr)) goto EXIT;
hr = pPubPoints->get_Count(&lCount);
if (FAILED(hr)) goto EXIT;
// Retrieve each publishing point and query the
// IWMSPublishingPoint2 interface. You can retrieve a pointer to this
// interface only when querying from a cache/proxy on-demand or
// cache/proxy broadcast publishing point.
for (long x = 0; x < lCount; x++)
{
varIndex = x;
hr = pPubPoints->get_Item(varIndex, &pPubPoint);
if (FAILED(hr)) goto EXIT;
// Retrieve the type of publishing point.
WMS_PUBLISHING_POINT_TYPE pptType;
hr = pPubPoint->get_Type(&pptType);
if (FAILED(hr)) goto EXIT;
if (pptType == WMS_PUBLISHING_POINT_TYPE_CACHE_PROXY_BROADCAST ||
pptType == WMS_PUBLISHING_POINT_TYPE_CACHE_PROXY_ON_DEMAND)
{
hr = pPubPoint->QueryInterface(IID_IWMSPublishingPoint2,
(void **)&pPubPoint2);
if (FAILED(hr)) goto EXIT;
pPubPoint2->Release();
}
// Release temporary COM objects.
pPubPoint->Release();
}
EXIT:
// TODO: Release temporary COM objects and uninitialize COM.