Share via


IWMSPlugin::get_CLSID

banner art

Previous Next

IWMSPlugin::get_CLSID

The get_CLSID method retrieves the CLSID of the plug-in.

Syntax

  HRESULT get_CLSID(
  BSTR*  pVal
);

Parameters

pVal

[out] Pointer to a BSTR value containing the CLSID of the plug-in.

Return Values

If the function 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 GUID is returned in the following format: {xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx}.

Example Code

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

// Declare variables and interfaces.
IWMSServer      *pServer;
IWMSPlugins     *pPlugins;
IWMSPlugin      *pPlugin;

HRESULT         hr;
CComVariant     varIndex;
CComBSTR        bstrText;
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 an IWMSPlugins interface
// and retrieve the total count of plug-ins.
hr = pServer->get_ControlProtocols(&pPlugins);
if (FAILED(hr)) goto EXIT;
hr = pPlugins->get_Count(&lCount);
if (FAILED(hr)) goto EXIT;


for (long x = 0; x < lCount; x++)
{
    varIndex = x;
    hr = pPlugins->get_Item(varIndex, &pPlugin);
    if (FAILED(hr)) goto EXIT;

    // Retrieve the class ID for the plug-in.
    hr = pPlugin->get_CLSID(&bstrText);
    if (FAILED(hr)) goto EXIT;

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