Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

744 lines
25 KiB

/*++
Copyright (C) 1996-1999 Microsoft Corporation
Module Name:
smonctrl.odl
Abstract:
<abstract>
--*/
#include "smonid.h" // Sysmon DISPID values
#include <olectl.h>
//LIBID_SystemMonitor
[
uuid(1B773E42-2509-11cf-942F-008029004347)
, helpstring("System Monitor Control")
, lcid(0x0000)
, version(3.6)
]
library SystemMonitor
{
//importlib("stdole32.tlb");
importlib(STDOLE_TLB);
importlib(STDTYPE_TLB);
// Display type constants
typedef
[
helpstring("System Monitor display type constants")
]
enum eDisplayTypeConstant {
[helpstring("Line graph.")] sysmonLineGraph = 0x0001,
[helpstring("Histogram.")] sysmonHistogram = 0x0002,
[helpstring("Report.")] sysmonReport = 0x0003
} DisplayTypeConstants;
// Report value type constants
typedef
[
helpstring("System Monitor report value type constants")
]
enum eReportValueTypeConstant {
[helpstring("Use default.")]
sysmonDefaultValue = 0x0000,
[helpstring("Current value.")]
sysmonCurrentValue = 0x0001,
[helpstring("Average value over the graph display interval.")]
sysmonAverage = 0x0002,
[helpstring("Minimum value in the graph display interval.")]
sysmonMinimum = 0x0003,
[helpstring("Maximum value in the graph display interval.")]
sysmonMaximum = 0x0004
} ReportValueTypeConstants;
// Data source type constants
typedef
[
helpstring("System Monitor data source type constants")
]
enum eDataSourceTypeConstant {
[helpstring("No data source.")] sysmonNullDataSource = 0xFFFFFFFF,
[helpstring("Current activity.")] sysmonCurrentActivity = 0x0001,
[helpstring("Log files.")] sysmonLogFiles = 0x0002,
[helpstring("SQL Log.")] sysmonSqlLog = 0x0003
} DataSourceTypeConstants;
//IID_ICounterItem
[
uuid(771A9520-EE28-11ce-941E-008029004347)
, helpstring("Definition of interface ICounterItem")
, hidden
, odl
]
interface ICounterItem : IUnknown
{
//Properties
[id(DISPID_VALUE), propget, helpstring("Current value.")]
HRESULT Value([out, retval] double *pdblValue);
[id(DISPID_COUNTERITEM_COLOR), propput, helpstring("Color.")]
HRESULT Color([in] OLE_COLOR Color);
[id(DISPID_COUNTERITEM_COLOR), propget]
HRESULT Color([out, retval] OLE_COLOR *pColor);
[id(DISPID_COUNTERITEM_WIDTH), propput, helpstring("Width.")]
HRESULT Width([in] INT iWidth);
[id(DISPID_COUNTERITEM_WIDTH), propget]
HRESULT Width([out, retval] INT *piValue);
[id(DISPID_COUNTERITEM_LINESTYLE), propput, helpstring("Line style.")]
HRESULT LineStyle([in] INT iLineStyle);
[id(DISPID_COUNTERITEM_LINESTYLE), propget]
HRESULT LineStyle([out, retval] INT *piValue);
[id(DISPID_COUNTERITEM_SCALEFACTOR), propput, helpstring("Scale factor.")]
HRESULT ScaleFactor([in] INT iScale);
[id(DISPID_COUNTERITEM_SCALEFACTOR), propget]
HRESULT ScaleFactor([out, retval] INT *piValue);
[id(DISPID_COUNTERITEM_PATH), propget]
HRESULT Path([out, retval] BSTR *pstrValue);
//Beta 1: [id(6), propget, helpstring("Current value.")]
HRESULT GetValue([out]double *Value, [out]long *Status);
HRESULT GetStatistics([out]double *Max, [out]double *Min,
[out]double *Avg, [out]long *Status);
}
//DIID_DICounterItem
[
uuid(C08C4FF2-0E2E-11cf-942C-008029004347)
, hidden
, helpstring("Definition of dispinterface DICounterItem")
]
dispinterface DICounterItem
{
interface ICounterItem;
}
//
// IID_ICounters
//
[
uuid(79167962-28FC-11cf-942F-008029004347),
helpstring("Counter collection"),
dual,
hidden,
odl
]
interface ICounters : IDispatch
{
[propget]
HRESULT Count([out,retval]long *pLong);
[propget, restricted, id(DISPID_NEWENUM)]
HRESULT _NewEnum([out,retval]IUnknown** ppIunk);
[propget, id(DISPID_VALUE)]
HRESULT Item([in]VARIANT index,[out,retval]DICounterItem **ppI);
HRESULT Add([in]BSTR pathname, [out,retval]DICounterItem **ppI);
HRESULT Remove([in]VARIANT index);
}
//IID_ILogFileItem
[
uuid(D6B518DD-05C7-418a-89E6-4F9CE8C6841E)
, helpstring("Definition of interface ILogFileItem")
, hidden
, odl
]
interface ILogFileItem : IUnknown
{
//Properties
[id(DISPID_VALUE), propget, helpstring("Log file path.")]
HRESULT Path([out, retval] BSTR *pstrValue);
}
//DIID_DILogFileItem
[
uuid(8D093FFC-F777-4917-82D1-833FBC54C58F)
, hidden
, helpstring("Definition of dispinterface DILogFileItem")
]
dispinterface DILogFileItem
{
interface ILogFileItem;
}
//
// IID_ILogFiles
//
[
uuid(6A2A97E6-6851-41ea-87AD-2A8225335865),
helpstring("Log file collection"),
dual,
hidden,
odl
]
interface ILogFiles : IDispatch
{
[propget]
HRESULT Count([out,retval]long *pLong);
[propget, restricted, id(DISPID_NEWENUM)]
HRESULT _NewEnum([out,retval]IUnknown** ppIunk);
[propget, id(DISPID_VALUE)]
HRESULT Item([in]VARIANT index,[out,retval]DILogFileItem **ppI);
HRESULT Add([in]BSTR pathname, [out,retval]DILogFileItem **ppI);
HRESULT Remove([in]VARIANT index);
}
//
// IID_ISystemMonitor
//
[
uuid(194EB241-C32C-11cf-9398-00AA00A3DDEA)
, helpstring("Definition of interface ISystemMonitor")
, hidden
, odl
]
interface ISystemMonitor : IUnknown
{
//Properties
[id(DISPID_APPEARANCE), propget, helpstring("The appearance.")]
HRESULT Appearance([out, retval] INT *iAppearance);
[id(DISPID_APPEARANCE), propput]
HRESULT Appearance([in] INT iAppearance);
[id(DISPID_BACKCOLOR), propget, helpstring("The background color.")]
HRESULT BackColor([out, retval] OLE_COLOR *pColor);
[id(DISPID_BACKCOLOR), propput]
HRESULT BackColor([in] OLE_COLOR Color);
[id(DISPID_BORDERSTYLE), propget, helpstring("The border style.")]
HRESULT BorderStyle([out, retval] INT *iBorderStyle);
[id(DISPID_BORDERSTYLE), propput]
HRESULT BorderStyle([in] INT iBorderStyle);
[id(DISPID_FORECOLOR), propget, helpstring("The foreground color.")]
HRESULT ForeColor([out, retval] OLE_COLOR *pColor);
[id(DISPID_FORECOLOR), propput]
HRESULT ForeColor([in] OLE_COLOR Color);
[id(DISPID_FONT), propget, helpstring("The font for all text.")]
HRESULT Font([out,retval] IFontDisp **ppFont);
[id(DISPID_FONT), propputref]
HRESULT Font([in] IFontDisp *pFont);
[id(DISPID_VALUE), propget, helpstring("The counter collection.")]
HRESULT Counters([out, retval] ICounters **ppICounters);
[id(DISPID_SYSMON_VERTICALGRID), propput, helpstring("Show vertical grid.")]
HRESULT ShowVerticalGrid([in] boolean bState);
[id(DISPID_SYSMON_VERTICALGRID), propget]
HRESULT ShowVerticalGrid([out, retval] boolean *pbState);
[id(DISPID_SYSMON_HORIZONTALGRID), propput, helpstring("Show horizontal grid.")]
HRESULT ShowHorizontalGrid([in] boolean bState);
[id(DISPID_SYSMON_HORIZONTALGRID), propget]
HRESULT ShowHorizontalGrid([out, retval] boolean *pbState);
[id(DISPID_SYSMON_LEGEND), propput, helpstring("Show counters legend.")]
HRESULT ShowLegend([in] boolean bState);
[id(DISPID_SYSMON_LEGEND), propget]
HRESULT ShowLegend([out, retval] boolean *pbState);
[id(DISPID_SYSMON_SCALELABELS), propput, helpstring("Show scale labels.")]
HRESULT ShowScaleLabels([in] boolean bState);
[id(DISPID_SYSMON_SCALELABELS), propget]
HRESULT ShowScaleLabels([out, retval] boolean *pbState);
[id(DISPID_SYSMON_VALUEBAR), propput, helpstring("Show value bar.")]
HRESULT ShowValueBar([in] boolean bState);
[id(DISPID_SYSMON_VALUEBAR), propget]
HRESULT ShowValueBar([out, retval] boolean *pbState);
[id(DISPID_SYSMON_MAXIMUMSCALE), propput, helpstring("Maximum scale value.")]
HRESULT MaximumScale([in] INT iValue);
[id(DISPID_SYSMON_MAXIMUMSCALE), propget]
HRESULT MaximumScale([out, retval] INT *piValue);
[id(DISPID_SYSMON_MINIMUMSCALE), propput, helpstring("Minimum scale value.")]
HRESULT MinimumScale([in] INT iValue);
[id(DISPID_SYSMON_MINIMUMSCALE), propget]
HRESULT MinimumScale([out, retval] INT *piValue);
[id(DISPID_SYSMON_UPDATEINTERVAL), propput, helpstring("Data sample interval.")]
HRESULT UpdateInterval([in] FLOAT fValue);
[id(DISPID_SYSMON_UPDATEINTERVAL), propget]
HRESULT UpdateInterval([out, retval] FLOAT *pfValue);
[id(DISPID_SYSMON_DISPLAYTYPE), propput, helpstring("Display type.")]
HRESULT DisplayType([in] DisplayTypeConstants eDisplayType);
[id(DISPID_SYSMON_DISPLAYTYPE), propget]
HRESULT DisplayType([out, retval] DisplayTypeConstants *peDisplayType);
[id(DISPID_SYSMON_MANUALUPDATE), propput, helpstring("Manual update.")]
HRESULT ManualUpdate([in] boolean bState);
[id(DISPID_SYSMON_MANUALUPDATE), propget]
HRESULT ManualUpdate([out, retval] boolean *pbState);
[id(DISPID_SYSMON_GRAPHTITLE), propput, helpstring("Graph title.")]
HRESULT GraphTitle([in] BSTR bsTitle);
[id(DISPID_SYSMON_GRAPHTITLE), propget]
HRESULT GraphTitle([out, retval] BSTR *pbsTitle);
[id(DISPID_SYSMON_YAXISLABEL), propput, helpstring("Y axis label.")]
HRESULT YAxisLabel([in] BSTR bsTitle);
[id(DISPID_SYSMON_YAXISLABEL), propget]
HRESULT YAxisLabel([out, retval] BSTR *pbsTitle);
//Beta 1: [id(13), propget, helpstring("Counter collection.")]
[id(DISPID_SYSMON_COLLECTSAMPLE), helpstring("Collect sample for each counter.")]
HRESULT CollectSample(void);
[id(DISPID_SYSMON_UPDATEGRAPH), helpstring("Apply visual changes to graph.")]
HRESULT UpdateGraph(void);
[id(DISPID_SYSMON_BROWSECOUNTERS), helpstring("Display counter browser.")]
HRESULT BrowseCounters(void);
[id(DISPID_SYSMON_DISPLAYPROPERTIES), helpstring("Display properties.")]
HRESULT DisplayProperties(void);
[id(DISPID_SYSMON_COUNTER), hidden]
HRESULT Counter([in] INT iIndex, [out] ICounterItem **ppICounter);
[id(DISPID_SYSMON_ADDCOUNTER), hidden]
HRESULT AddCounter([in] BSTR bsPath, [out] ICounterItem **ppICounter);
[id(DISPID_SYSMON_DELETECOUNTER), hidden]
HRESULT DeleteCounter([in] ICounterItem *pCtr);
[id(DISPID_SYSMON_BACKCOLORCTL), propget, helpstring("Control panel background color.")]
HRESULT BackColorCtl([out, retval] OLE_COLOR *pColor);
[id(DISPID_SYSMON_BACKCOLORCTL), propput]
HRESULT BackColorCtl([in] OLE_COLOR Color);
[id(DISPID_SYSMON_LOGFILENAME), propput, helpstring("Log file name.")]
HRESULT LogFileName([in] BSTR bsFileName);
[id(DISPID_SYSMON_LOGFILENAME), propget]
HRESULT LogFileName([out, retval] BSTR *bsFileName);
[id(DISPID_SYSMON_LOGVIEWSTART), propput, helpstring("Start time of log file view.")]
HRESULT LogViewStart([in] DATE StartTime);
[id(DISPID_SYSMON_LOGVIEWSTART), propget]
HRESULT LogViewStart([out, retval] DATE *StartTime);
[id(DISPID_SYSMON_LOGVIEWSTOP), propput, helpstring("Stop time of log file view.")]
HRESULT LogViewStop([in] DATE StopTime);
[id(DISPID_SYSMON_LOGVIEWSTOP), propget]
HRESULT LogViewStop([out, retval] DATE *StopTime);
[id(DISPID_SYSMON_GRIDCOLOR), propget, helpstring("Graph grid color.")]
HRESULT GridColor([out, retval] OLE_COLOR *pColor);
[id(DISPID_SYSMON_GRIDCOLOR), propput]
HRESULT GridColor([in] OLE_COLOR Color);
[id(DISPID_SYSMON_TIMEBARCOLOR), propget, helpstring("Graph time bar color.")]
HRESULT TimeBarColor([out, retval] OLE_COLOR *pColor);
[id(DISPID_SYSMON_TIMEBARCOLOR), propput]
HRESULT TimeBarColor([in] OLE_COLOR Color);
[id(DISPID_SYSMON_HIGHLIGHT), propget, helpstring("Highlight the selected counter..")]
HRESULT Highlight([out, retval] boolean *pbState);
[id(DISPID_SYSMON_HIGHLIGHT), propput]
HRESULT Highlight([in] boolean bState);
[id(DISPID_SYSMON_TOOLBAR), propget, helpstring("Show the toolbar")]
HRESULT ShowToolbar([out, retval] boolean *pbState);
[id(DISPID_SYSMON_TOOLBAR), propput]
HRESULT ShowToolbar([in] boolean bState);
[id(DISPID_SYSMON_PASTE), helpstring("Paste Counters from clipboard.")]
HRESULT Paste (void);
[id(DISPID_SYSMON_COPY), helpstring("Copy Counters to clipboard.")]
HRESULT Copy (void);
[id(DISPID_SYSMON_RESET), helpstring("Delete all counters in the control.")]
HRESULT Reset (void);
[id(DISPID_SYSMON_READONLY), propput, helpstring("Disallow property modifications.")]
HRESULT ReadOnly([in] boolean bState);
[id(DISPID_SYSMON_READONLY), propget]
HRESULT ReadOnly([out, retval] boolean *pbState);
[id(DISPID_SYSMON_REPORTVALUETUPE), propput, helpstring("Report value.")]
HRESULT ReportValueType([in] ReportValueTypeConstants eReportValueType);
[id(DISPID_SYSMON_REPORTVALUETUPE), propget]
HRESULT ReportValueType([out, retval] ReportValueTypeConstants *peReportValueType);
[id(DISPID_SYSMON_MONITORDUPLICATEINSTANCES), propput, helpstring("Allow monitoring of duplicate counter instances.")]
HRESULT MonitorDuplicateInstances([in] boolean bState);
[id(DISPID_SYSMON_MONITORDUPLICATEINSTANCES), propget]
HRESULT MonitorDuplicateInstances([out, retval] boolean* pbState);
[id(DISPID_SYSMON_DISPLAYFILTER), propput, helpstring("Number of samples per display interval.")]
HRESULT DisplayFilter([in] INT iValue);
[id(DISPID_SYSMON_DISPLAYFILTER), propget]
HRESULT DisplayFilter([out, retval] INT* piValue);
[id(DISPID_SYSMON_LOGFILES), propget, helpstring("The log file collection.")]
HRESULT LogFiles([out, retval] ILogFiles** ppILogFiles);
[id(DISPID_SYSMON_DATASOURCETYPE), propput, helpstring("Data source type.")]
HRESULT DataSourceType([in] DataSourceTypeConstants eDataSourceType);
[id(DISPID_SYSMON_DATASOURCETYPE), propget]
HRESULT DataSourceType([out, retval] DataSourceTypeConstants *peDataSourceType);
[id(DISPID_SYSMON_SQLDSNNAME), propput, helpstring("SQL DSN name.")]
HRESULT SqlDsnName([in] BSTR bsSqlDsnName);
[id(DISPID_SYSMON_SQLDSNNAME), propget]
HRESULT SqlDsnName([out, retval] BSTR *bsSqlDsnName);
[id(DISPID_SYSMON_SQLLOGSETNAME), propput, helpstring("SQL logset name.")]
HRESULT SqlLogSetName([in] BSTR bsSqlLogSetName);
[id(DISPID_SYSMON_SQLLOGSETNAME), propget]
HRESULT SqlLogSetName([out, retval] BSTR *bsSqlLogSetName);
}
//
//DIID_DISystemMonitorInternal
//
[
uuid(194EB242-C32C-11cf-9398-00AA00A3DDEA)
, hidden
, helpstring("Definition of dispinterface DISystemMonitorInternal`")
]
dispinterface DISystemMonitorInternal
{
interface ISystemMonitor;
}
//DIID_DISystemMonitor
[
uuid(13D73D81-C32E-11cf-9398-00AA00A3DDEA)
, hidden
, helpstring("Definition of dispinterface DISystemMonitor")
]
dispinterface DISystemMonitor
{
properties:
[id(DISPID_APPEARANCE), helpstring("The appearance.")]
INT Appearance;
[id(DISPID_BACKCOLOR), helpstring("The background color.")]
OLE_COLOR BackColor;
[id(DISPID_BORDERSTYLE), helpstring("The border style.")]
INT BorderStyle;
[id(DISPID_FORECOLOR), helpstring("The foreground color.")]
OLE_COLOR ForeColor;
[id(DISPID_FONT), helpstring("The font for all text.")]
IFontDisp *Font;
[id(DISPID_SYSMON_VERTICALGRID), helpstring("Show vertical grid.")]
boolean ShowVerticalGrid;
[id(DISPID_SYSMON_HORIZONTALGRID), helpstring("Show horizontal grid.")]
boolean ShowHorizontalGrid;
[id(DISPID_SYSMON_LEGEND), helpstring("Show counters legend.")]
boolean ShowLegend;
[id(DISPID_SYSMON_SCALELABELS), helpstring("Show scale labels.")]
boolean ShowScaleLabels;
[id(DISPID_SYSMON_VALUEBAR), helpstring("Show value bar.")]
boolean ShowValueBar;
[id(DISPID_SYSMON_MAXIMUMSCALE), helpstring("Maximum scale value.")]
INT MaximumScale;
[id(DISPID_SYSMON_MINIMUMSCALE), helpstring("Minimum scale value.")]
INT MinimumScale;
[id(DISPID_SYSMON_UPDATEINTERVAL), helpstring("Data sample interval.")]
FLOAT UpdateInterval;
[id(DISPID_SYSMON_DISPLAYTYPE), helpstring("Display type.")]
DisplayTypeConstants DisplayType;
[id(DISPID_SYSMON_MANUALUPDATE), helpstring("Manual update.")]
boolean ManualUpdate;
[id(DISPID_SYSMON_GRAPHTITLE), helpstring("Graph title.")]
BSTR GraphTitle;
[id(DISPID_SYSMON_YAXISLABEL), helpstring("Y axis label.")]
BSTR YAxisLabel;
[id(DISPID_VALUE), helpstring("The counter collection.")] ICounters *Counters;
//[id(13)] ICounters *Counters;
[id(DISPID_SYSMON_BACKCOLORCTL), helpstring("Control panel background color.")]
OLE_COLOR BackColorCtl;
[id(DISPID_SYSMON_LOGFILENAME), helpstring("Log file name.")]
BSTR LogFileName;
[id(DISPID_SYSMON_LOGVIEWSTART), helpstring("Start time of log file view.")]
DATE LogViewStart;
[id(DISPID_SYSMON_LOGVIEWSTOP), helpstring("Stop time of log file view.")]
DATE LogViewStop;
[id(DISPID_SYSMON_GRIDCOLOR), helpstring("Graph grid color.")]
OLE_COLOR GridColor;
[id(DISPID_SYSMON_TIMEBARCOLOR), helpstring("Graph time bar color.")]
OLE_COLOR TimeBarColor;
[id(DISPID_SYSMON_HIGHLIGHT), helpstring("Highlight the selected counter.")]
boolean Highlight;
[id(DISPID_SYSMON_TOOLBAR), helpstring("Show the toolbar")]
boolean ShowToolbar;
[id(DISPID_SYSMON_READONLY), helpstring("Disallow property modifications.")]
boolean ReadOnly;
[id(DISPID_SYSMON_REPORTVALUETUPE), helpstring("Report value.")]
ReportValueTypeConstants ReportValueType;
[id(DISPID_SYSMON_MONITORDUPLICATEINSTANCES),
helpstring("Allow monitoring of duplicate counter instances.")]
boolean MonitorDuplicateInstances;
[id(DISPID_SYSMON_DISPLAYFILTER),
helpstring("Number of samples per display interval.")]
INT DisplayFilter;
[id(DISPID_SYSMON_LOGFILES), helpstring("The log file collection.")]
ILogFiles* LogFiles;
[id(DISPID_SYSMON_DATASOURCETYPE), helpstring("Data source type.")]
DataSourceTypeConstants DataSourceType;
[id(DISPID_SYSMON_SQLDSNNAME), helpstring("SQL DSN name.")] BSTR SqlDsnName;
[id(DISPID_SYSMON_SQLLOGSETNAME), helpstring("SQL logset name.")] BSTR SqlLogSetName;
methods:
[id(DISPID_SYSMON_COLLECTSAMPLE), helpstring("Collect sample for each counter.")]
void CollectSample(void);
[id(DISPID_SYSMON_UPDATEGRAPH), helpstring("Apply visual changes to graph.")]
void UpdateGraph(void);
[id(DISPID_SYSMON_BROWSECOUNTERS), helpstring("Display counter browser.")]
void BrowseCounters(void);
[id(DISPID_SYSMON_DISPLAYPROPERTIES), helpstring("Display properties.")]
void DisplayProperties(void);
/*
[id(18), hidden]
void Counter([in] INT iIndex, [out] ICounterItem **ppICounter);
[id(19), hidden]
void AddCounter([in] BSTR bsPath, [out] ICounterItem **ppICounter);
[id(20), hidden]
void DeleteCounter([in] ICounterItem *pCtr);
*/
[id(DISPID_SYSMON_PASTE), helpstring("Paste Counters from clipboard.")]
void Paste (void);
[id(DISPID_SYSMON_COPY), helpstring("Copy Counters to clipboard.")]
void Copy (void);
[id(DISPID_SYSMON_RESET), helpstring("Delete all counters in the control.")]
void Reset (void);
}
//IID_ISystemMonitorEvents
[
uuid(EE660EA0-4ABD-11cf-943A-008029004347)
, helpstring("System Monitor Events")
, odl
]
interface ISystemMonitorEvents : IUnknown
{
[id(DISPID_SMONEVENT_COUNTERSELECTED), helpstring("A counter was selected.")]
void OnCounterSelected([in] INT Index);
[id(DISPID_SMONEVENT_COUNTERADDED), helpstring("A counter was added.")]
void OnCounterAdded([in] INT Index);
[id(DISPID_SMONEVENT_COUNTERDELETED), helpstring("A counter was deleted.")]
void OnCounterDeleted([in] INT Index);
[id(DISPID_SMONEVENT_SAMPLECOLLECTED),
helpstring("A sample of all counter values was collected.")]
void OnSampleCollected(void);
[id(DISPID_SMONEVENT_DBLCLICK),
helpstring("The left mouse button was double clicked.")]
void OnDblClick([in] INT Index);
}
//
// DIID_DISystemMonitorEvents
//
[
uuid(84979930-4AB3-11cf-943A-008029004347)
, helpstring("System Monitor Events")
]
dispinterface DISystemMonitorEvents
{
properties:
methods:
[id(DISPID_SMONEVENT_COUNTERSELECTED), helpstring("A counter was selected.")]
void OnCounterSelected([in] INT iIndex);
[id(DISPID_SMONEVENT_COUNTERADDED), helpstring("A counter was added.")]
void OnCounterAdded([in] INT iIndex);
[id(DISPID_SMONEVENT_COUNTERDELETED), helpstring("A counter was deleted.")]
void OnCounterDeleted([in] INT iIndex);
[id(DISPID_SMONEVENT_SAMPLECOLLECTED),
helpstring("A sample of all counter values was collected.")]
void OnSampleCollected(void);
[id(DISPID_SMONEVENT_DBLCLICK),
helpstring("The left mouse button was double clicked.")]
void OnDblClick([in ] INT Index);
}
//
// CLSID_SystemMonitor
//
[
uuid(C4D2D8E0-D1DD-11ce-940F-008029004347)
, helpstring("System Monitor Control Type Information")
, control
]
coclass SystemMonitor
{
[default] dispinterface DISystemMonitor;
interface ISystemMonitor;
[default, source] dispinterface DISystemMonitorEvents;
}
//
// CLSID_CounterItem
//
[
uuid(C4D2D8E0-D1DD-11ce-940F-008029004348)
, helpstring("System Monitor Counter Item Type Information")
, control
]
coclass CounterItem
{
[default] dispinterface DICounterItem;
interface ICounterItem;
}
//
// CLSID_Counters
//
[
uuid(B2B066D2-2AAC-11cf-942F-008029004347)
, helpstring("System Monitor Counter Collection Type Information")
]
coclass Counters
{
interface ICounters;
}
//
// CLSID_LogFileItem
//
[
uuid(16EC5BE8-DF93-4237-94E4-9EE918111D71)
, helpstring("System Monitor Log File Item Type Information")
, control
]
coclass LogFileItem
{
[default] dispinterface DILogFileItem;
interface ILogFileItem;
}
//
// CLSID_LogFiles
//
[
uuid(2735D9FD-F6B9-4f19-A5D9-E2D068584BC5)
, helpstring("System Monitor Log File Collection Type Information")
]
coclass LogFiles
{
interface ILogFiles;
}
};