You are on page 1of 3

/*---------------------------------------------------------------------

"Debugging Applications" (Microsoft Press)
Copyright (c) 1997-2000 John Robbins -- All rights reserved.
---------------------------------------------------------------------*/

import "oaidl.idl";
import "ocidl.idl";
    [
        object ,
        uuid ( 4D42A00C-7774-11D3-9F57-00C04FA34F2C ) ,
        dual ,
        helpstring ( "ITrace Interface" ) ,
        pointer_default ( unique )
    ]
    interface ITrace : IDispatch
    {
        [ id ( 1 ) ,
          helpstring ( "method Trace" ) ]
          HRESULT Trace ( [ in ] BSTR bstrText ) ;

        [ id ( 2 ) ,
          helpstring ( "method FullTrace" ) ]
          HRESULT FullTrace ( [ in ] BSTR bstrText , [ in ] long dwPID ) 
;

        [ propget, id ( 3 ) ,
          helpstring ( "property ShowTimeStamps" ) ]
          HRESULT ShowTimeStamps ( [ out, retval ] VARIANT_BOOL *pVal ) 
;
        [ propput, id ( 3 ) ,
          helpstring ( "property ShowTimeStamps" ) ]
          HRESULT ShowTimeStamps ( [ in ] VARIANT_BOOL newVal ) ;

        [ propget,
          id ( 4 ) ,
          helpstring ( "property ShowTraceAsODS" ) ]
          HRESULT ShowTraceAsODS ( [ out, retval ] VARIANT_BOOL *pVal ) 
;
        [ propput,
          id ( 4 ) ,
          helpstring ( "property ShowTraceAsODS" ) ]
          HRESULT ShowTraceAsODS ( [ in ] VARIANT_BOOL newVal ) ;

        [ propget,
          id ( 5 ) ,
          helpstring ( "property ShowItemNumber" ) ]
          HRESULT ShowItemNumber ( [ out, retval ] VARIANT_BOOL *pVal ) 
;
        [ propput,
          id ( 5 ) ,
          helpstring ( "property ShowItemNumber" ) ]
          HRESULT ShowItemNumber ( [ in ] VARIANT_BOOL newVal ) ;

        [ propget,
          id ( 6 ) ,
          helpstring ( "property ShowPID" ) ]
          HRESULT ShowPID ( [ out, retval ] VARIANT_BOOL *pVal ) ;
        [ propput,
          id ( 6 ) ,
          helpstring ( "property ShowPID" ) ]
          HRESULT ShowPID ( [ in ] VARIANT_BOOL newVal ) ;

        [ propget,
          id ( 7 ) ,
          helpstring ( "property AddCRLF" ) ]
          HRESULT AddCRLF ( [ out, retval ] VARIANT_BOOL *pVal ) ;
        [ propput,
          id ( 7 ) ,
          helpstring ( "property AddCRLF" ) ]
          HRESULT AddCRLF ( [ in ] VARIANT_BOOL newVal ) ;
    } ;

[
    uuid ( 4D42A000-7774-11D3-9F57-00C04FA34F2C ) ,
    version ( 1.0 ) ,
    helpstring ( "TraceSrv 1.0 Type Library" )
]
library TRACESRVLib
{
    importlib ( "stdole32.tlb" ) ;
    importlib ( "stdole2.tlb" ) ;

    [
        uuid ( 4D42A00E-7774-11D3-9F57-00C04FA34F2C ) ,
        helpstring ( "_ITraceEvents Interface" )
    ]
    dispinterface _ITraceEvents
    {
        properties:
        methods:
        [ id ( 1 ) ,
          helpstring ( "method TraceEvent" ) ]
          HRESULT TraceEvent ( BSTR bstrText ) ;

        [ id ( 2 ) ,
          helpstring ( "method ChangeShowTimeStamps" ) ]
          HRESULT ChangeShowTimeStamps ( VARIANT_BOOL bNewVal ) ;

        [ id ( 3 ) ,
          helpstring ( "method ChangeShowTraceAsODS" ) ]
          HRESULT ChangeShowTraceAsODS ( VARIANT_BOOL bNewVal ) ;

        [ id ( 4 ) ,
          helpstring ( "method ChangeShowItemNumber" ) ]
          HRESULT ChangeShowItemNumber ( VARIANT_BOOL bNewVal ) ;

        [ id ( 5 ) ,
          helpstring ( "method ChangeShowPID" ) ]
          HRESULT ChangeShowPID ( VARIANT_BOOL bNewVal ) ;

        [ id ( 6 ) ,
          helpstring ( "method ChangeAddCRLF" ) ]
          HRESULT ChangeAddCRLF ( VARIANT_BOOL bNewVal ) ;
    } ;
    [
        uuid ( 4D42A00D-7774-11D3-9F57-00C04FA34F2C ) ,
        helpstring ( "Trace Class" )
    ]
    coclass Trace
    {
        [ default ] interface ITrace ;
        [ default, source ] dispinterface _ITraceEvents ;
    } ;
} ;

You might also like