Source code of Windows XP (NT5)
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.

707 lines
21 KiB

  1. /*++
  2. Copyright (C) 1996-1999 Microsoft Corporation
  3. Module Name:
  4. smonctrl.odl
  5. Abstract:
  6. <abstract>
  7. --*/
  8. #include <olectl.h>
  9. #define DISPID_VALUE 0
  10. #define DISPID_NEWENUM -4
  11. //LIBID_SystemMonitor
  12. [
  13. uuid(1B773E42-2509-11cf-942F-008029004347)
  14. , helpstring("System Monitor Control")
  15. , lcid(0x0000)
  16. , version(3.4)
  17. ]
  18. library SystemMonitor
  19. {
  20. //importlib("stdole32.tlb");
  21. importlib(STDOLE_TLB);
  22. importlib(STDTYPE_TLB);
  23. // Display type constants
  24. typedef
  25. [
  26. helpstring("System Monitor display type constants")
  27. ]
  28. enum eDisplayTypeConstant {
  29. [helpstring("Line graph.")] sysmonLineGraph = 0x0001,
  30. [helpstring("Histogram.")] sysmonHistogram = 0x0002,
  31. [helpstring("Report.")] sysmonReport = 0x0003
  32. } DisplayTypeConstants;
  33. // Report value type constants
  34. typedef
  35. [
  36. helpstring("System Monitor report value type constants")
  37. ]
  38. enum eReportValueTypeConstant {
  39. [helpstring("Use default.")]
  40. sysmonDefaultValue = 0x0000,
  41. [helpstring("Current value.")]
  42. sysmonCurrentValue = 0x0001,
  43. [helpstring("Average value over the graph display interval.")]
  44. sysmonAverage = 0x0002,
  45. [helpstring("Minimum value in the graph display interval.")]
  46. sysmonMinimum = 0x0003,
  47. [helpstring("Maximum value in the graph display interval.")]
  48. sysmonMaximum = 0x0004
  49. } ReportValueTypeConstants;
  50. // Data source type constants
  51. typedef
  52. [
  53. helpstring("System Monitor data source type constants")
  54. ]
  55. enum eDataSourceTypeConstant {
  56. [helpstring("No data source.")] sysmonNullDataSource = 0xFFFFFFFF,
  57. [helpstring("Current activity.")] sysmonCurrentActivity = 0x0001,
  58. [helpstring("Log files.")] sysmonLogFiles = 0x0002,
  59. [helpstring("SQL Log.")] sysmonSqlLog = 0x0003
  60. } DataSourceTypeConstants;
  61. //IID_ICounterItem
  62. [
  63. uuid(771A9520-EE28-11ce-941E-008029004347)
  64. , helpstring("Definition of interface ICounterItem")
  65. , hidden
  66. , odl
  67. ]
  68. interface ICounterItem : IUnknown
  69. {
  70. //Properties
  71. [id(DISPID_VALUE), propget, helpstring("Current value.")]
  72. HRESULT Value([out, retval] double *pdblValue);
  73. [id(1), propput, helpstring("Color.")]
  74. HRESULT Color([in] OLE_COLOR Color);
  75. [id(1), propget]
  76. HRESULT Color([out, retval] OLE_COLOR *pColor);
  77. [id(2), propput, helpstring("Width.")]
  78. HRESULT Width([in] INT iWidth);
  79. [id(2), propget]
  80. HRESULT Width([out, retval] INT *piValue);
  81. [id(3), propput, helpstring("Line style.")]
  82. HRESULT LineStyle([in] INT iLineStyle);
  83. [id(3), propget]
  84. HRESULT LineStyle([out, retval] INT *piValue);
  85. [id(4), propput, helpstring("Scale factor.")]
  86. HRESULT ScaleFactor([in] INT iScale);
  87. [id(4), propget]
  88. HRESULT ScaleFactor([out, retval] INT *piValue);
  89. [id(5), propget]
  90. HRESULT Path([out, retval] BSTR *pstrValue);
  91. //Beta 1: [id(6), propget, helpstring("Current value.")]
  92. HRESULT GetValue([out]double *Value, [out]long *Status);
  93. HRESULT GetStatistics([out]double *Max, [out]double *Min,
  94. [out]double *Avg, [out]long *Status);
  95. }
  96. //DIID_DICounterItem
  97. [
  98. uuid(C08C4FF2-0E2E-11cf-942C-008029004347)
  99. , hidden
  100. , helpstring("Definition of dispinterface DICounterItem")
  101. ]
  102. dispinterface DICounterItem
  103. {
  104. interface ICounterItem;
  105. }
  106. //
  107. // IID_ICounters
  108. //
  109. [
  110. uuid(79167962-28FC-11cf-942F-008029004347),
  111. helpstring("Counter collection"),
  112. dual,
  113. hidden,
  114. odl
  115. ]
  116. interface ICounters : IDispatch
  117. {
  118. [propget]
  119. HRESULT Count([out,retval]long *pLong);
  120. [propget, restricted, id(DISPID_NEWENUM)]
  121. HRESULT _NewEnum([out,retval]IUnknown** ppIunk);
  122. [propget, id(DISPID_VALUE)]
  123. HRESULT Item([in]VARIANT index,[out,retval]DICounterItem **ppI);
  124. HRESULT Add([in]BSTR pathname, [out,retval]DICounterItem **ppI);
  125. HRESULT Remove([in]VARIANT index);
  126. }
  127. //IID_ILogFileItem
  128. [
  129. uuid(D6B518DD-05C7-418a-89E6-4F9CE8C6841E)
  130. , helpstring("Definition of interface ILogFileItem")
  131. , hidden
  132. , odl
  133. ]
  134. interface ILogFileItem : IUnknown
  135. {
  136. //Properties
  137. [id(DISPID_VALUE), propget, helpstring("Log file path.")]
  138. HRESULT Path([out, retval] BSTR *pstrValue);
  139. }
  140. //DIID_DILogFileItem
  141. [
  142. uuid(8D093FFC-F777-4917-82D1-833FBC54C58F)
  143. , hidden
  144. , helpstring("Definition of dispinterface DILogFileItem")
  145. ]
  146. dispinterface DILogFileItem
  147. {
  148. interface ILogFileItem;
  149. }
  150. //
  151. // IID_ILogFiles
  152. //
  153. [
  154. uuid(6A2A97E6-6851-41ea-87AD-2A8225335865),
  155. helpstring("Log file collection"),
  156. dual,
  157. hidden,
  158. odl
  159. ]
  160. interface ILogFiles : IDispatch
  161. {
  162. [propget]
  163. HRESULT Count([out,retval]long *pLong);
  164. [propget, restricted, id(DISPID_NEWENUM)]
  165. HRESULT _NewEnum([out,retval]IUnknown** ppIunk);
  166. [propget, id(DISPID_VALUE)]
  167. HRESULT Item([in]VARIANT index,[out,retval]DILogFileItem **ppI);
  168. HRESULT Add([in]BSTR pathname, [out,retval]DILogFileItem **ppI);
  169. HRESULT Remove([in]VARIANT index);
  170. }
  171. //
  172. // IID_ISystemMonitor
  173. //
  174. [
  175. uuid(194EB241-C32C-11cf-9398-00AA00A3DDEA)
  176. , helpstring("Definition of interface ISystemMonitor")
  177. , hidden
  178. , odl
  179. ]
  180. interface ISystemMonitor : IUnknown
  181. {
  182. //Properties
  183. [id(DISPID_APPEARANCE), propget, helpstring("The appearance.")]
  184. HRESULT Appearance([out, retval] INT *iAppearance);
  185. [id(DISPID_APPEARANCE), propput]
  186. HRESULT Appearance([in] INT iAppearance);
  187. [id(DISPID_BACKCOLOR), propget, helpstring("The background color.")]
  188. HRESULT BackColor([out, retval] OLE_COLOR *pColor);
  189. [id(DISPID_BACKCOLOR), propput]
  190. HRESULT BackColor([in] OLE_COLOR Color);
  191. [id(DISPID_BORDERSTYLE), propget, helpstring("The border style.")]
  192. HRESULT BorderStyle([out, retval] INT *iBorderStyle);
  193. [id(DISPID_BORDERSTYLE), propput]
  194. HRESULT BorderStyle([in] INT iBorderStyle);
  195. [id(DISPID_FORECOLOR), propget, helpstring("The foreground color.")]
  196. HRESULT ForeColor([out, retval] OLE_COLOR *pColor);
  197. [id(DISPID_FORECOLOR), propput]
  198. HRESULT ForeColor([in] OLE_COLOR Color);
  199. [id(DISPID_FONT), propget, helpstring("The font for all text.")]
  200. HRESULT Font([out,retval] IFontDisp **ppFont);
  201. [id(DISPID_FONT), propputref]
  202. HRESULT Font([in] IFontDisp *pFont);
  203. [id(DISPID_VALUE), propget, helpstring("The counter collection.")]
  204. HRESULT Counters([out, retval] ICounters **ppICounters);
  205. [id(1), propput, helpstring("Show vertical grid.")]
  206. HRESULT ShowVerticalGrid([in] boolean bState);
  207. [id(1), propget]
  208. HRESULT ShowVerticalGrid([out, retval] boolean *pbState);
  209. [id(2), propput, helpstring("Show horizontal grid.")]
  210. HRESULT ShowHorizontalGrid([in] boolean bState);
  211. [id(2), propget]
  212. HRESULT ShowHorizontalGrid([out, retval] boolean *pbState);
  213. [id(3), propput, helpstring("Show counters legend.")]
  214. HRESULT ShowLegend([in] boolean bState);
  215. [id(3), propget]
  216. HRESULT ShowLegend([out, retval] boolean *pbState);
  217. [id(4), propput, helpstring("Show scale labels.")]
  218. HRESULT ShowScaleLabels([in] boolean bState);
  219. [id(4), propget]
  220. HRESULT ShowScaleLabels([out, retval] boolean *pbState);
  221. [id(5), propput, helpstring("Show value bar.")]
  222. HRESULT ShowValueBar([in] boolean bState);
  223. [id(5), propget]
  224. HRESULT ShowValueBar([out, retval] boolean *pbState);
  225. [id(6), propput, helpstring("Maximum scale value.")]
  226. HRESULT MaximumScale([in] INT iValue);
  227. [id(6), propget]
  228. HRESULT MaximumScale([out, retval] INT *piValue);
  229. [id(7), propput, helpstring("Minimum scale value.")]
  230. HRESULT MinimumScale([in] INT iValue);
  231. [id(7), propget]
  232. HRESULT MinimumScale([out, retval] INT *piValue);
  233. [id(8), propput, helpstring("Data sample interval.")]
  234. HRESULT UpdateInterval([in] FLOAT fValue);
  235. [id(8), propget]
  236. HRESULT UpdateInterval([out, retval] FLOAT *pfValue);
  237. [id(9), propput, helpstring("Display type.")]
  238. HRESULT DisplayType([in] DisplayTypeConstants eDisplayType);
  239. [id(9), propget]
  240. HRESULT DisplayType([out, retval] DisplayTypeConstants *peDisplayType);
  241. [id(10), propput, helpstring("Manual update.")]
  242. HRESULT ManualUpdate([in] boolean bState);
  243. [id(10), propget]
  244. HRESULT ManualUpdate([out, retval] boolean *pbState);
  245. [id(11), propput, helpstring("Graph title.")]
  246. HRESULT GraphTitle([in] BSTR bsTitle);
  247. [id(11), propget]
  248. HRESULT GraphTitle([out, retval] BSTR *pbsTitle);
  249. [id(12), propput, helpstring("Y axis label.")]
  250. HRESULT YAxisLabel([in] BSTR bsTitle);
  251. [id(12), propget]
  252. HRESULT YAxisLabel([out, retval] BSTR *pbsTitle);
  253. //Beta 1: [id(13), propget, helpstring("Counter collection.")]
  254. [id(14), helpstring("Collect sample for each counter.")]
  255. HRESULT CollectSample(void);
  256. [id(15), helpstring("Apply visual changes to graph.")]
  257. HRESULT UpdateGraph(void);
  258. [id(16), helpstring("Display counter browser.")]
  259. HRESULT BrowseCounters(void);
  260. [id(17), helpstring("Display properties.")]
  261. HRESULT DisplayProperties(void);
  262. [id(18), hidden]
  263. HRESULT Counter([in] INT iIndex, [out] ICounterItem **ppICounter);
  264. [id(19), hidden]
  265. HRESULT AddCounter([in] BSTR bsPath, [out] ICounterItem **ppICounter);
  266. [id(20), hidden]
  267. HRESULT DeleteCounter([in] ICounterItem *pCtr);
  268. [id(21), propget, helpstring("Control panel background color.")]
  269. HRESULT BackColorCtl([out, retval] OLE_COLOR *pColor);
  270. [id(21), propput]
  271. HRESULT BackColorCtl([in] OLE_COLOR Color);
  272. [id(22), propput, helpstring("Log file name.")]
  273. HRESULT LogFileName([in] BSTR bsFileName);
  274. [id(22), propget]
  275. HRESULT LogFileName([out, retval] BSTR *bsFileName);
  276. [id(23), propput, helpstring("Start time of log file view.")]
  277. HRESULT LogViewStart([in] DATE StartTime);
  278. [id(23), propget]
  279. HRESULT LogViewStart([out, retval] DATE *StartTime);
  280. [id(24), propput, helpstring("Stop time of log file view.")]
  281. HRESULT LogViewStop([in] DATE StopTime);
  282. [id(24), propget]
  283. HRESULT LogViewStop([out, retval] DATE *StopTime);
  284. [id(25), propget, helpstring("Graph grid color.")]
  285. HRESULT GridColor([out, retval] OLE_COLOR *pColor);
  286. [id(25), propput]
  287. HRESULT GridColor([in] OLE_COLOR Color);
  288. [id(26), propget, helpstring("Graph time bar color.")]
  289. HRESULT TimeBarColor([out, retval] OLE_COLOR *pColor);
  290. [id(26), propput]
  291. HRESULT TimeBarColor([in] OLE_COLOR Color);
  292. [id(27), propget, helpstring("Highlight the selected counter..")]
  293. HRESULT Highlight([out, retval] boolean *pbState);
  294. [id(27), propput]
  295. HRESULT Highlight([in] boolean bState);
  296. [id(28), propget, helpstring("Show the toolbar")]
  297. HRESULT ShowToolbar([out, retval] boolean *pbState);
  298. [id(28), propput]
  299. HRESULT ShowToolbar([in] boolean bState);
  300. [id(29), helpstring("Paste Counters from clipboard.")]
  301. HRESULT Paste (void);
  302. [id(30), helpstring("Copy Counters to clipboard.")]
  303. HRESULT Copy (void);
  304. [id(31), helpstring("Delete all counters in the control.")]
  305. HRESULT Reset (void);
  306. [id(32), propput, helpstring("Disallow property modifications.")]
  307. HRESULT ReadOnly([in] boolean bState);
  308. [id(32), propget]
  309. HRESULT ReadOnly([out, retval] boolean *pbState);
  310. [id(33), propput, helpstring("Report value.")]
  311. HRESULT ReportValueType([in] ReportValueTypeConstants eReportValueType);
  312. [id(33), propget]
  313. HRESULT ReportValueType([out, retval] ReportValueTypeConstants *peReportValueType);
  314. [id(34), propput, helpstring("Allow monitoring of duplicate counter instances.")]
  315. HRESULT MonitorDuplicateInstances([in] boolean bState);
  316. [id(34), propget]
  317. HRESULT MonitorDuplicateInstances([out, retval] boolean* pbState);
  318. [id(35), propput, helpstring("Number of samples per display interval.")]
  319. HRESULT DisplayFilter([in] INT iValue);
  320. [id(35), propget]
  321. HRESULT DisplayFilter([out, retval] INT* piValue);
  322. [id(36), propget, helpstring("The log file collection.")]
  323. HRESULT LogFiles([out, retval] ILogFiles** ppILogFiles);
  324. [id(37), propput, helpstring("Data source type.")]
  325. HRESULT DataSourceType([in] DataSourceTypeConstants eDataSourceType);
  326. [id(37), propget]
  327. HRESULT DataSourceType([out, retval] DataSourceTypeConstants *peDataSourceType);
  328. [id(38), propput, helpstring("SQL DSN name.")]
  329. HRESULT SqlDsnName([in] BSTR bsSqlDsnName);
  330. [id(38), propget]
  331. HRESULT SqlDsnName([out, retval] BSTR *bsSqlDsnName);
  332. [id(39), propput, helpstring("SQL logset name.")]
  333. HRESULT SqlLogSetName([in] BSTR bsSqlLogSetName);
  334. [id(39), propget]
  335. HRESULT SqlLogSetName([out, retval] BSTR *bsSqlLogSetName);
  336. }
  337. //
  338. //DIID_DISystemMonitorInternal
  339. //
  340. [
  341. uuid(194EB242-C32C-11cf-9398-00AA00A3DDEA)
  342. , hidden
  343. , helpstring("Definition of dispinterface DISystemMonitorInternal`")
  344. ]
  345. dispinterface DISystemMonitorInternal
  346. {
  347. interface ISystemMonitor;
  348. }
  349. //DIID_DISystemMonitor
  350. [
  351. uuid(13D73D81-C32E-11cf-9398-00AA00A3DDEA)
  352. , hidden
  353. , helpstring("Definition of dispinterface DISystemMonitor")
  354. ]
  355. dispinterface DISystemMonitor
  356. {
  357. properties:
  358. [id(DISPID_APPEARANCE), helpstring("The appearance.")] INT Appearance;
  359. [id(DISPID_BACKCOLOR), helpstring("The background color.")] OLE_COLOR BackColor;
  360. [id(DISPID_BORDERSTYLE), helpstring("The border style.")] INT BorderStyle;
  361. [id(DISPID_FORECOLOR), helpstring("The foreground color.")] OLE_COLOR ForeColor;
  362. [id(DISPID_FONT), helpstring("The font for all text.")] IFontDisp *Font;
  363. [id(1), helpstring("Show vertical grid.")] boolean ShowVerticalGrid;
  364. [id(2), helpstring("Show horizontal grid.")] boolean ShowHorizontalGrid;
  365. [id(3), helpstring("Show counters legend.")] boolean ShowLegend;
  366. [id(4), helpstring("Show scale labels.")] boolean ShowScaleLabels;
  367. [id(5), helpstring("Show value bar.")] boolean ShowValueBar;
  368. [id(6), helpstring("Maximum scale value.")] INT MaximumScale;
  369. [id(7), helpstring("Minimum scale value.")] INT MinimumScale;
  370. [id(8), helpstring("Data sample interval.")] FLOAT UpdateInterval;
  371. [id(9), helpstring("Display type.")] DisplayTypeConstants DisplayType;
  372. [id(10), helpstring("Manual update.")] boolean ManualUpdate;
  373. [id(11), helpstring("Graph title.")] BSTR GraphTitle;
  374. [id(12), helpstring("Y axis label.")] BSTR YAxisLabel;
  375. [id(DISPID_VALUE), helpstring("The counter collection.")] ICounters *Counters;
  376. //[id(13)] ICounters *Counters;
  377. [id(21), helpstring("Control panel background color.")] OLE_COLOR BackColorCtl;
  378. [id(22), helpstring("Log file name.")] BSTR LogFileName;
  379. [id(23), helpstring("Start time of log file view.")] DATE LogViewStart;
  380. [id(24), helpstring("Stop time of log file view.")] DATE LogViewStop;
  381. [id(25), helpstring("Graph grid color.")] OLE_COLOR GridColor;
  382. [id(26), helpstring("Graph time bar color.")] OLE_COLOR TimeBarColor;
  383. [id(27), helpstring("Highlight the selected counter.")] boolean Highlight;
  384. [id(28), helpstring("Show the toolbar")] boolean ShowToolbar;
  385. [id(32), helpstring("Disallow property modifications.")] boolean ReadOnly;
  386. [id(33), helpstring("Report value.")] ReportValueTypeConstants ReportValueType;
  387. [id(34), helpstring("Allow monitoring of duplicate counter instances.")] boolean MonitorDuplicateInstances;
  388. [id(35), helpstring("Number of samples per display interval.")] INT DisplayFilter;
  389. [id(36), helpstring("The log file collection.")] ILogFiles* LogFiles;
  390. [id(37), helpstring("Data source type.")] DataSourceTypeConstants DataSourceType;
  391. [id(38), helpstring("SQL DSN name.")] BSTR SqlDsnName;
  392. [id(39), helpstring("SQL logset name.")] BSTR SqlLogSetName;
  393. methods:
  394. [id(14), helpstring("Collect sample for each counter.")]
  395. void CollectSample(void);
  396. [id(15), helpstring("Apply visual changes to graph.")]
  397. void UpdateGraph(void);
  398. [id(16), helpstring("Display counter browser.")]
  399. void BrowseCounters(void);
  400. [id(17), helpstring("Display properties.")]
  401. void DisplayProperties(void);
  402. /*
  403. [id(18), hidden]
  404. void Counter([in] INT iIndex, [out] ICounterItem **ppICounter);
  405. [id(19), hidden]
  406. void AddCounter([in] BSTR bsPath, [out] ICounterItem **ppICounter);
  407. [id(20), hidden]
  408. void DeleteCounter([in] ICounterItem *pCtr);
  409. */
  410. [id(29), helpstring("Paste Counters from clipboard.")]
  411. void Paste (void);
  412. [id(30), helpstring("Copy Counters to clipboard.")]
  413. void Copy (void);
  414. [id(31), helpstring("Delete all counters in the control.")]
  415. void Reset (void);
  416. }
  417. //IID_ISystemMonitorEvents
  418. [
  419. uuid(EE660EA0-4ABD-11cf-943A-008029004347)
  420. , helpstring("System Monitor Events")
  421. , odl
  422. ]
  423. interface ISystemMonitorEvents : IUnknown
  424. {
  425. [id(1), helpstring("A counter was selected.")]
  426. void OnCounterSelected([in] INT Index);
  427. [id(2), helpstring("A counter was added.")]
  428. void OnCounterAdded([in] INT Index);
  429. [id(3), helpstring("A counter was deleted.")]
  430. void OnCounterDeleted([in] INT Index);
  431. [id(4), helpstring("A sample of all counter values was collected.")]
  432. void OnSampleCollected(void);
  433. [id(5), helpstring("The left mouse button was double clicked.")]
  434. void OnDblClick([in] INT Index);
  435. }
  436. //
  437. // DIID_DISystemMonitorEvents
  438. //
  439. [
  440. uuid(84979930-4AB3-11cf-943A-008029004347)
  441. , helpstring("System Monitor Events")
  442. ]
  443. dispinterface DISystemMonitorEvents
  444. {
  445. properties:
  446. methods:
  447. [id(1), helpstring("A counter was selected.")]
  448. void OnCounterSelected([in] INT iIndex);
  449. [id(2), helpstring("A counter was added.")]
  450. void OnCounterAdded([in] INT iIndex);
  451. [id(3), helpstring("A counter was deleted.")]
  452. void OnCounterDeleted([in] INT iIndex);
  453. [id(4), helpstring("A sample of all counter values was collected.")]
  454. void OnSampleCollected(void);
  455. [id(5), helpstring("The left mouse button was double clicked.")]
  456. void OnDblClick([in ] INT Index);
  457. }
  458. //
  459. // CLSID_SystemMonitor
  460. //
  461. [
  462. uuid(C4D2D8E0-D1DD-11ce-940F-008029004347)
  463. , helpstring("System Monitor Control Type Information")
  464. , control
  465. ]
  466. coclass SystemMonitor
  467. {
  468. [default] dispinterface DISystemMonitor;
  469. interface ISystemMonitor;
  470. [default, source] dispinterface DISystemMonitorEvents;
  471. }
  472. //
  473. // CLSID_CounterItem
  474. //
  475. [
  476. uuid(C4D2D8E0-D1DD-11ce-940F-008029004348)
  477. , helpstring("System Monitor Counter Item Type Information")
  478. , control
  479. ]
  480. coclass CounterItem
  481. {
  482. [default] dispinterface DICounterItem;
  483. interface ICounterItem;
  484. }
  485. //
  486. // CLSID_Counters
  487. //
  488. [
  489. uuid(B2B066D2-2AAC-11cf-942F-008029004347)
  490. , helpstring("System Monitor Counter Collection Type Information")
  491. ]
  492. coclass Counters
  493. {
  494. interface ICounters;
  495. }
  496. //
  497. // CLSID_LogFileItem
  498. //
  499. [
  500. uuid(16EC5BE8-DF93-4237-94E4-9EE918111D71)
  501. , helpstring("System Monitor Log File Item Type Information")
  502. , control
  503. ]
  504. coclass LogFileItem
  505. {
  506. [default] dispinterface DILogFileItem;
  507. interface ILogFileItem;
  508. }
  509. //
  510. // CLSID_LogFiles
  511. //
  512. [
  513. uuid(2735D9FD-F6B9-4f19-A5D9-E2D068584BC5)
  514. , helpstring("System Monitor Log File Collection Type Information")
  515. ]
  516. coclass LogFiles
  517. {
  518. interface ILogFiles;
  519. }
  520. };