IWMSLoggingAdmin::get_Cycle

The get_Cycle method retrieves an enumeration value indicating how often the log file cycles.

HRESULT get_Cycle(
  WMS_LOG_CYCLE_TYPE*  pCycle
);

Arguments

pCycle

[out] Pointer to a WMS_LOG_CYCLE_TYPE enumeration type indicating how often the log file cycles. This must be one of the following values.

Value

Description

WMS_LOG_CYCLE_NONE

The log file never cycles.

WMS_LOG_CYCLE_SIZE

The log file cycles based on the specified size.

WMS_LOG_CYCLE_MONTH

The log file cycles monthly.

WMS_LOG_CYCLE_WEEK

The log file cycles weekly.

WMS_LOG_CYCLE_DAY

The log file cycles daily.

WMS_LOG_CYCLE_HOUR

The log file cycles hourly.

Return Value

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

Return code

Number

Description

E_FAIL

0x80004005

The server cannot find the WMS Client Logging plug-in.

E_POINTER

0x80004003

The pCycle parameter is NULL.

Remarks

A log file cycles when the existing file is removed and a new log file is created.

Example

#include <windows.h>
#include <atlbase.h>    // Includes CComVariant.

// To access system plug-in interfaces, the
// entire type library must be imported as shown.
#import "WMSServerTypeLib.dll" no_namespace named_guids \
                               raw_interfaces_only

// Declare variables and interfaces.
IWMSServer          *pServer;
IWMSPlugins         *pPlugins;
IWMSPlugin          *pPlugin;
IDispatch           *pDispatch;
IWMSLoggingAdmin    *pLogAdmin;

HRESULT         hr;
CComVariant     varIndex;

// 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
// containing event handler plug-ins.
hr = pServer->get_EventHandlers(&pPlugins);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to the IWMSPlugin interface
// of the plug-in to be configured.
varIndex = "WMS Client Logging";
hr = pPlugins->get_Item(varIndex, &pPlugin);
if (FAILED(hr)) goto EXIT;

// Retrieve a pointer to the custom interface
// of the plug-in.
hr = pPlugin->get_CustomInterface(&pDispatch);
if (FAILED(hr)) goto EXIT;

// Query the specific administration interface
// for the plug-in.
hr = pDispatch->QueryInterface(IID_IWMSLoggingAdmin,
                              (void **)&pLogAdmin);
if (FAILED(hr)) goto EXIT;

// Retrieve the enumeration value indicating
// how often the log file is cycled.
WMS_LOG_CYCLE_TYPE ctCycleType;
hr = pLogAdmin->get_Cycle(&ctCycleType);
if (FAILED(hr)) goto EXIT;

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

Requirements

Library: WMSServerTypeLib.dll.

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

See Also

Reference

IWMSLoggingAdmin Interface