windows-nt/Source/XPSP1/NT/admin/pchealth/helpctr/service/include/saf.idl
2020-09-26 16:20:57 +08:00

523 lines
25 KiB
Plaintext

/********************************************************************
Copyright (c) 1999 Microsoft Corporation
Module Name:
SAF.idl
Abstract:
This file includes the declaration for all ISAFChannel objects
Revision History:
Steve Shih created 07/15/99
Kalyani Narlanka Changes to ISAFChannel, ISAFIncidentItem
Kalyani Narlanka (kalyanin) 06/28/'00
Added Interface for Encryption
Kalyani Narlanka (kalyanin) 9/29/2000
Added Interfaces for Unsolicited Remote Control
Juan J. Perez (jperez)
Added Interfaces for Voice over IP (ISAFIntercomClient and ISAFIntercomServer)
Juan J. Perez (jperez) 01/08/2001
Added Interface (ISAFChannelNotifyIncident)
********************************************************************/
cpp_quote( "#include <SAFDID.h>" )
#include <SAFDID.h>
typedef enum {
pchIncidentInvalid = 0,
pchIncidentOpen = 1,
pchIncidentClosed = 2,
pchIncidentMax = 3
} IncidentStatusEnum;
typedef enum
{
pchIncidentsInvalid = 0,
pchAllIncidents = 1,
pchOpenIncidents = 2,
pchClosedIncidents = 3,
pchAllIncidentsAllUsers = 4,
pchOpenIncidentsAllUsers = 5,
pchClosedIncidentsAllUsers = 6,
pchIncidentsMax = 7
} IncidentCollectionOptionEnum;
typedef enum
{
pchActive = 0,
pchConnected = 1,
pchConnectQuery = 2,
pchShadow = 3,
pchDisconnected = 4,
pchIdle = 5,
pchListen = 6,
pchReset = 7,
pchDown = 8,
pchInit = 9,
pchStateInvalid =10
} SessionStateEnum;
[
object,
uuid(833E4180-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("ISAFReg Interface"),
pointer_default(unique)
]
interface ISAFReg : IDispatch
{
//
// Properties
//
[propget, id(DISPID_SAF_SR__EOF )] HRESULT EOF ( [out, retval] VARIANT_BOOL *pVal );
[propget, id(DISPID_SAF_SR__VENDORID )] HRESULT VendorID ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_SR__PRODUCTID )] HRESULT ProductID ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_SR__VENDORNAME )] HRESULT VendorName ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_SR__PRODUCTNAME )] HRESULT ProductName ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_SR__PRODUCTDESCRIPTION)] HRESULT ProductDescription( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_SR__VENDORICON )] HRESULT VendorIcon ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_SR__SUPPORTURL )] HRESULT SupportUrl ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_SR__PUBLICKEY )] HRESULT PublicKey ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_SR__USERACCOUNT )] HRESULT UserAccount ( [out, retval] BSTR *pVal );
//
// Methods
//
[id(DISPID_SAF_SR__MOVEFIRST)] HRESULT MoveFirst();
[id(DISPID_SAF_SR__MOVENEXT )] HRESULT MoveNext ();
};
[
object,
uuid(833E4181-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("ISAFChannel Interface"),
pointer_default(unique)
]
interface ISAFChannel : IDispatch
{
//
// Properties
//
[propget, id(DISPID_SAF_C__VENDORID )] HRESULT VendorID ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_C__PRODUCTID )] HRESULT ProductID ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_C__VENDORNAME )] HRESULT VendorName ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_C__PRODUCTNAME )] HRESULT ProductName ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_C__DESCRIPTION )] HRESULT Description ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_C__VENDORDIRECTORY)] HRESULT VendorDirectory( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_C__SECURITY )] HRESULT Security ( [out, retval] IPCHSecurityDescriptor* *pVal );
[propput, id(DISPID_SAF_C__SECURITY )] HRESULT Security ( [in] IPCHSecurityDescriptor* newVal );
[propget, id(DISPID_SAF_C__NOTIFICATION )] HRESULT Notification ( [out, retval] BSTR *pVal );
[propput, id(DISPID_SAF_C__NOTIFICATION )] HRESULT Notification ( [in] BSTR newVal);
//
// Methods
//
[id(DISPID_SAF_C__INCIDENTS )] HRESULT Incidents( [in] IncidentCollectionOptionEnum opt, [out, retval] IPCHCollection* *ppVal );
[id(DISPID_SAF_C__RECORDINCIDENT)] HRESULT RecordIncident( [in ] BSTR bstrDisplay ,
[in ] BSTR bstrURL ,
[in, optional] VARIANT vProgress ,
[in, optional] VARIANT vXMLDataFile ,
[in, optional] VARIANT vXMLBlob ,
[out,retval ] ISAFIncidentItem* *pVal );
};
[
object,
uuid(833E4182-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("ISAFIncidentItem Interface"),
pointer_default(unique)
]
interface ISAFIncidentItem : IDispatch
{
//
// Properties
//
[propget, id(DISPID_SAF_II__DISPLAYSTRING)] HRESULT DisplayString( [out, retval] BSTR *pVal );
[propput, id(DISPID_SAF_II__DISPLAYSTRING)] HRESULT DisplayString( [in] BSTR newVal );
[propget, id(DISPID_SAF_II__URL )] HRESULT URL ( [out, retval] BSTR *pVal );
[propput, id(DISPID_SAF_II__URL )] HRESULT URL ( [in] BSTR newVal );
[propget, id(DISPID_SAF_II__PROGRESS )] HRESULT Progress ( [out, retval] BSTR *pVal );
[propput, id(DISPID_SAF_II__PROGRESS )] HRESULT Progress ( [in] BSTR newVal );
[propget, id(DISPID_SAF_II__XMLDATAFILE )] HRESULT XMLDataFile ( [out, retval] BSTR *pVal );
[propput, id(DISPID_SAF_II__XMLDATAFILE )] HRESULT XMLDataFile ( [in] BSTR newVal );
[propget, id(DISPID_SAF_II__XMLBLOB )] HRESULT XMLBlob ( [out, retval] BSTR *pVal );
[propput, id(DISPID_SAF_II__XMLBLOB )] HRESULT XMLBlob ( [in] BSTR newVal );
[propget, id(DISPID_SAF_II__CREATIONTIME )] HRESULT CreationTime ( [out, retval] DATE *pVal );
[propget, id(DISPID_SAF_II__CHANGEDTIME )] HRESULT ChangedTime ( [out, retval] DATE *pVal );
[propget, id(DISPID_SAF_II__CLOSEDTIME )] HRESULT ClosedTime ( [out, retval] DATE *pVal );
[propget, id(DISPID_SAF_II__STATUS )] HRESULT Status ( [out, retval] IncidentStatusEnum *pVal );
[propget, id(DISPID_SAF_II__SECURITY )] HRESULT Security ( [out, retval] IPCHSecurityDescriptor* *pVal );
[propput, id(DISPID_SAF_II__SECURITY )] HRESULT Security ( [in] IPCHSecurityDescriptor* newVal );
[propget, id(DISPID_SAF_II__OWNER )] HRESULT Owner ( [out, retval] BSTR *pVal );
//
// Methods
//
[id(DISPID_SAF_II__CLOSEINCIDENTITEM )] HRESULT CloseIncidentItem ();
[id(DISPID_SAF_II__DELETEINCIDENTITEM)] HRESULT DeleteIncidentItem();
};
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
typedef [v1_enum] enum tagEUploadType {
eutBug = 0x00000000,
eutEscalated = 0x00000001,
eutNonEscalated = 0x00000002,
} EUploadType;
[
object,
uuid(833E4183-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("ISAFIncident Interface"),
pointer_default(unique)
]
interface ISAFIncident : IDispatch
{
//
// Properties
//
[propget, id(DISPID_SAF_INC__MISC )] HRESULT Misc ( [out, retval] IDispatch* *ppdispDict );
[propput, id(DISPID_SAF_INC__SELFHELPTRACE )] HRESULT SelfHelpTrace ( [in] IUnknown *punkStr );
[propput, id(DISPID_SAF_INC__MACHINEHISTORY )] HRESULT MachineHistory ( [in] IUnknown *punkStm );
[propput, id(DISPID_SAF_INC__MACHINESNAPSHOT )] HRESULT MachineSnapshot ( [in] IUnknown *punkStm );
[propget, id(DISPID_SAF_INC__PROBLEMDESCRIPTION)] HRESULT ProblemDescription( [out, retval] BSTR *pbstrVal );
[propput, id(DISPID_SAF_INC__PROBLEMDESCRIPTION)] HRESULT ProblemDescription( [in] BSTR bstrVal );
[propget, id(DISPID_SAF_INC__PRODUCTNAME )] HRESULT ProductName ( [out, retval] BSTR *pbstrVal );
[propput, id(DISPID_SAF_INC__PRODUCTNAME )] HRESULT ProductName ( [in] BSTR bstrVal );
[propget, id(DISPID_SAF_INC__PRODUCTID )] HRESULT ProductID ( [out, retval] BSTR *pbstrVal );
[propput, id(DISPID_SAF_INC__PRODUCTID )] HRESULT ProductID ( [in] BSTR bstrVal );
[propget, id(DISPID_SAF_INC__USERNAME )] HRESULT UserName ( [out, retval] BSTR *pbstrVal );
[propput, id(DISPID_SAF_INC__USERNAME )] HRESULT UserName ( [in] BSTR bstrVal );
[propget, id(DISPID_SAF_INC__UPLOADTYPE )] HRESULT UploadType ( [out, retval] EUploadType *peut );
[propput, id(DISPID_SAF_INC__UPLOADTYPE )] HRESULT UploadType ( [in] EUploadType eut );
[propget, id(DISPID_SAF_INC__INCIDENTXSL )] HRESULT IncidentXSL ( [out, retval] BSTR *pbstrVal );
[propput, id(DISPID_SAF_INC__INCIDENTXSL )] HRESULT IncidentXSL ( [in] BSTR bstrVal );
// Salem Changes
[propget, id(DISPID_SAF_INC__RCREQUESTED )] HRESULT RCRequested ( [out, retval] VARIANT_BOOL *pVal );
[propput, id(DISPID_SAF_INC__RCREQUESTED )] HRESULT RCRequested ( [in] VARIANT_BOOL Val );
[propget, id(DISPID_SAF_INC__RCENCRYPTED )] HRESULT RCTicketEncrypted ( [out, retval] VARIANT_BOOL *pVal );
[propput, id(DISPID_SAF_INC__RCENCRYPTED )] HRESULT RCTicketEncrypted ( [in] VARIANT_BOOL Val );
[propget, id(DISPID_SAF_INC__RCTICKET )] HRESULT RCTicket ( [out, retval] BSTR *pbstrVal );
[propput, id(DISPID_SAF_INC__RCTICKET )] HRESULT RCTicket ( [in] BSTR bstrVal );
[propget, id(DISPID_SAF_INC__STARTPAGE )] HRESULT StartPage ( [out, retval] BSTR *pbstrVal );
[propput, id(DISPID_SAF_INC__STARTPAGE )] HRESULT StartPage ( [in] BSTR bstrVal );
//
// Methods
//
[id(DISPID_SAF_INC__LOADFROMSTREAM)] HRESULT LoadFromStream( [in] IUnknown* punkStm );
[id(DISPID_SAF_INC__SAVETOSTREAM )] HRESULT SaveToStream ( [out, retval] IUnknown* *ppunkStm );
[id(DISPID_SAF_INC__LOAD )] HRESULT Load ( [in] BSTR bstrFileName );
[id(DISPID_SAF_INC__SAVE )] HRESULT Save ( [in] BSTR bstrFileName );
[id(DISPID_SAF_INC__GETXMLASSTREAM)] HRESULT GetXMLAsStream( [out, retval] IUnknown* *ppunkStm );
[id(DISPID_SAF_INC__GETXML )] HRESULT GetXML ( [in] BSTR bstrFileName );
// Methods to load incident from XML.
[id(DISPID_SAF_INC__LOADFROMXMLSTREAM )] HRESULT LoadFromXMLStream ( [in] IUnknown* punkStm );
[id(DISPID_SAF_INC__LOADFROMXMLFILE )] HRESULT LoadFromXMLFile ( [in] BSTR bstrFileName );
[id(DISPID_SAF_INC__LOADFROMXMLSTRING )] HRESULT LoadFromXMLString ( [in] BSTR bstrXMLBlob );
};
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
typedef [v1_enum] enum tagDC_STATUS {
DC_NOTACTIVE = 0x00000000, // Status before first ExecuteXXXX() call.
DC_COLLECTING = 0x00000001, // Status after ExecuteXXXX() call.
DC_COMPARING = 0x00000005, // Status after CompareSnapshots() call.
DC_FAILED = 0x00000002, // Status after failure (server deny, ect.)
DC_COMPLETED = 0x00000003, // Status after successful data collection.
DC_NODELTA = 0x00000004, // No delta has been generated from the comparison.
} DC_STATUS;
[
object,
uuid(833E4190-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("ISAFDataCollection Interface"),
pointer_default(unique)
]
interface ISAFDataCollection : IDispatch
{
//
// Properties
//
[propget, id(DISPID_SAF_DC__STATUS )] HRESULT Status ( [out, retval] DC_STATUS *pVal );
[propget, id(DISPID_SAF_DC__PERCENTDONE )] HRESULT PercentDone ( [out, retval] long *pVal );
[propget, id(DISPID_SAF_DC__ERRORCODE )] HRESULT ErrorCode ( [out, retval] long *pVal );
[propget, id(DISPID_SAF_DC__MACHINEDATA_DATASPEC )] HRESULT MachineData_DataSpec ( [out, retval] BSTR *pVal );
[propput, id(DISPID_SAF_DC__MACHINEDATA_DATASPEC )] HRESULT MachineData_DataSpec ( [in] BSTR newVal );
[propget, id(DISPID_SAF_DC__HISTORY_DATASPEC )] HRESULT History_DataSpec ( [out, retval] BSTR *pVal );
[propput, id(DISPID_SAF_DC__HISTORY_DATASPEC )] HRESULT History_DataSpec ( [in] BSTR newVal );
[propget, id(DISPID_SAF_DC__HISTORY_MAXDELTAS )] HRESULT History_MaxDeltas ( [out, retval] long *pVal );
[propput, id(DISPID_SAF_DC__HISTORY_MAXDELTAS )] HRESULT History_MaxDeltas ( [in] long newVal );
[propget, id(DISPID_SAF_DC__HISTORY_MAXSUPPORTEDDELTAS)] HRESULT History_MaxSupportedDeltas( [out, retval] long *pVal );
[propput, id(DISPID_SAF_DC__ONSTATUSCHANGE )] HRESULT onStatusChange ( [in] IDispatch* function );
[propput, id(DISPID_SAF_DC__ONPROGRESS )] HRESULT onProgress ( [in] IDispatch* function );
[propput, id(DISPID_SAF_DC__ONCOMPLETE )] HRESULT onComplete ( [in] IDispatch* function );
[propget, id(DISPID_SAF_DC__REPORTS )] HRESULT Reports ( [out, retval] IPCHCollection* *ppC );
//
// Methods
//
[id(DISPID_SAF_DC__COMPARE_SNAPSHOTS)] HRESULT CompareSnapshots( [in] BSTR bstrFilenameT0, [in] BSTR bstrFilenameT1, [in] BSTR bstrFilenameDiff );
[id(DISPID_SAF_DC__EXECUTESYNC )] HRESULT ExecuteSync ();
[id(DISPID_SAF_DC__EXECUTEASYNC)] HRESULT ExecuteAsync();
[id(DISPID_SAF_DC__ABORT )] HRESULT Abort ();
[id(DISPID_SAF_DC__MACHINEDATA_GETSTREAM)] HRESULT MachineData_GetStream( [out, retval] IUnknown* *stream );
[id(DISPID_SAF_DC__HISTORY_GETSTREAM )] HRESULT History_GetStream ( [out, retval] IUnknown* *stream );
};
[
uuid(833E4191-AFF7-4AC3-AAC2-9F24C1457BCE),
helpstring("DSAFDataCollectionEvents Interface")
]
dispinterface DSAFDataCollectionEvents
{
properties:
methods:
[id(DISPID_SAF_DCE__ONSTATUSCHANGE)] HRESULT onStatusChange( ISAFDataCollection* pchdc, long lStatus );
[id(DISPID_SAF_DCE__ONPROGRESS )] HRESULT onProgress ( ISAFDataCollection* pchdc, long lDone, long lTotal );
[id(DISPID_SAF_DCE__ONCOMPLETE )] HRESULT onComplete ( ISAFDataCollection* pchdc, HRESULT hrRes );
};
[
object,
uuid(833E4192-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("ISAFDataCollectionReport Interface"),
pointer_default(unique)
]
interface ISAFDataCollectionReport : IDispatch
{
//
// Properties
//
[propget, id(DISPID_SAF_DCR__NAMESPACE )] HRESULT Namespace ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_DCR__CLASS )] HRESULT Class ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_DCR__WQL )] HRESULT WQL ( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_DCR__ERRORCODE )] HRESULT ErrorCode ( [out, retval] long *pVal );
[propget, id(DISPID_SAF_DCR__DESCRIPTION)] HRESULT Description( [out, retval] BSTR *pVal );
};
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
///////////////////////////////////////////////////////////////////////////////
typedef [v1_enum] enum tagCB_STATUS {
CB_NOTACTIVE = 0x00000000,
CB_COMPRESSING = 0x00000001,
CB_COMPLETED = 0x00000002,
CB_FAILED = 0x00000003,
} CB_STATUS;
[
object,
uuid(833E41A0-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("ISAFCabinet Interface"),
pointer_default(unique)
]
interface ISAFCabinet : IDispatch
{
//
// Properties
//
[propput, id(DISPID_SAF_CB__IGNOREMISSINGFILES)] HRESULT IgnoreMissingFiles( [in] VARIANT_BOOL fIgnoreMissingFiles );
[propput, id(DISPID_SAF_CB__ONPROGRESSFILES )] HRESULT onProgressFiles ( [in] IDispatch* function );
[propput, id(DISPID_SAF_CB__ONPROGRESSBYTES )] HRESULT onProgressBytes ( [in] IDispatch* function );
[propput, id(DISPID_SAF_CB__ONCOMPLETE )] HRESULT onComplete ( [in] IDispatch* function );
[propget, id(DISPID_SAF_CB__STATUS )] HRESULT Status ( [out, retval] CB_STATUS *pVal );
[propget, id(DISPID_SAF_CB__ERRORCODE )] HRESULT ErrorCode ( [out, retval] long *pVal );
//
// Methods
//
[id(DISPID_SAF_CB__ADDFILE )] HRESULT AddFile ( [in] BSTR bstrFilePath , [in, optional] VARIANT vFileName );
[id(DISPID_SAF_CB__COMPRESS)] HRESULT Compress( [in] BSTR bstrCabinetFile );
[id(DISPID_SAF_CB__ABORT )] HRESULT Abort ();
};
[
uuid(833E41A1-AFF7-4AC3-AAC2-9F24C1457BCE),
helpstring("DSAFCabinetEvents Interface")
]
dispinterface DSAFCabinetEvents
{
properties:
methods:
[id(DISPID_SAF_CBE__ONPROGRESSFILES)] HRESULT onProgressFiles( ISAFCabinet* hcpcb, BSTR bstrFile, long lDone, long lTotal );
[id(DISPID_SAF_CBE__ONPROGRESSBYTES)] HRESULT onProgressBytes( ISAFCabinet* hcpcb, long lDone, long lTotal );
[id(DISPID_SAF_CBE__ONCOMPLETE )] HRESULT onComplete ( ISAFCabinet* hcpcb, HRESULT hrRes );
};
// Encryption
[
object,
uuid(833E41A8-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("ISAFEncrypt Interface"),
pointer_default(unique)
]
interface ISAFEncrypt : IDispatch
{
//
// Properties
//
// TODO? Need an enumerator for the different available encryption types.
[propget, id(DISPID_SAF_ENC__ENCRYPTIONTYPE )] HRESULT EncryptionType( [out, retval] long *pLongVal );
[propput, id(DISPID_SAF_ENC__ENCRYPTIONTYPE )] HRESULT EncryptionType( [in] long LongVal );
//
// Methods
//
[id(DISPID_SAF_ENC__ENCRYPTSTRING )] HRESULT EncryptString( [in] BSTR bstrEncryptionkey, [in] BSTR bstrInputString, [out, retval] BSTR *bstrEncryptedString );
[id(DISPID_SAF_ENC__DECRYPTSTRING )] HRESULT DecryptString( [in] BSTR bstrEncryptionkey, [in] BSTR bstrInputString, [out, retval] BSTR *bstrDecryptedString );
[id(DISPID_SAF_ENC__ENCRYPTFILE )] HRESULT EncryptFile ( [in] BSTR bstrEncryptionKey, [in] BSTR bstrInputFile, [in ] BSTR bstrEncryptedFile );
[id(DISPID_SAF_ENC__DECRYPTFILE )] HRESULT DecryptFile ( [in] BSTR bstrEncryptionKey, [in] BSTR bstrInputFile, [in ] BSTR bstrDecryptedFile );
[id(DISPID_SAF_ENC__ENCRYPTSTREAM )] HRESULT EncryptStream( [in] BSTR bstrEncryptionKey, [in] IUnknown *punkInStm, [out, retval] IUnknown* *ppunkOutStm );
[id(DISPID_SAF_ENC__DECRYPTSTREAM )] HRESULT DecryptStream( [in] BSTR bstrEncryptionKey, [in] IUnknown *punkInStm, [out, retval] IUnknown* *ppunkOutStm );
};
// Following interfaces For Unsolicited Remote Control
[
object,
uuid(833E41A9-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("ISAFUser Interface"),
pointer_default(unique)
]
interface ISAFUser : IDispatch
{
//
// Properties
//
[propget, id(DISPID_SAF_USER__DOMAINNAME)] HRESULT DomainName( [out, retval] BSTR *pVal );
[propget, id(DISPID_SAF_USER__USERNAME )] HRESULT UserName ( [out, retval] BSTR *pVal );
[propput, id(DISPID_SAF_USER__DOMAINNAME)] HRESULT DomainName( [in ] BSTR pVal );
[propput, id(DISPID_SAF_USER__USERNAME )] HRESULT UserName ( [in ] BSTR pVal );
};
[
object,
uuid(833E41AA-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("ISAFSession Interface"),
pointer_default(unique)
]
interface ISAFSession : IDispatch
{
//Properties
[propget, id(DISPID_SAF_SESS__SESSIONID )] HRESULT SessionID ( [out, retval] DWORD *pVal );
[propput, id(DISPID_SAF_SESS__SESSIONID )] HRESULT SessionID ( [in ] DWORD pVal );
[propget, id(DISPID_SAF_SESS__SESSIONSTATE)] HRESULT SessionState( [out, retval] SessionStateEnum *pVal );
[propput, id(DISPID_SAF_SESS__SESSIONSTATE)] HRESULT SessionState( [in ] SessionStateEnum pVal );
[propget, id(DISPID_SAF_SESS__DOMAINNAME )] HRESULT DomainName ( [out, retval] BSTR *pVal );
[propput, id(DISPID_SAF_SESS__DOMAINNAME )] HRESULT DomainName ( [in ] BSTR pVal );
[propget, id(DISPID_SAF_SESS__USERNAME )] HRESULT UserName ( [out, retval] BSTR *pVal );
[propput, id(DISPID_SAF_SESS__USERNAME )] HRESULT UserName ( [in ] BSTR pVal );
};
[
object,
uuid(833E41AB-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("ISAFRemoteConnectionData Interface"),
pointer_default(unique)
]
interface ISAFRemoteConnectionData : IDispatch
{
//
// Methods
//
[id(DISPID_SAF_RCD__CONNECTIONPARMS)] HRESULT ConnectionParms( [in ] BSTR bstrServerName ,
[in ] BSTR bstrUserName ,
[in ] BSTR bstrDomainName ,
[in ] long lSessionID ,
[in ] BSTR bstrUserHelpBlob ,
[out, retval] BSTR *bstrConnectionString );
[id(DISPID_SAF_RCD__USERS )] HRESULT Users ( [out, retval] IPCHCollection* *ppUsers );
[id(DISPID_SAF_RCD__SESSIONS)] HRESULT Sessions( [in, optional] VARIANT vUserName, [in, optional] VARIANT vDomainName, [out, retval] IPCHCollection* *ppSessions );
};
[
object,
uuid(833E41AC-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("ISAFRemoteDesktopConnection Interface"),
pointer_default(unique)
]
interface ISAFRemoteDesktopConnection : IDispatch
{
//
// Methods
//
[id(DISPID_SAF_RDC__CONNECTREMOTEDESKTOP)] HRESULT ConnectRemoteDesktop( [in] BSTR ServerName, [out, retval] ISAFRemoteConnectionData* *ppRCD );
};
[
object,
uuid(833E41B0-AFF7-4AC3-AAC2-9F24C1457BCE),
dual,
oleautomation,
helpstring("ISAFChannelNotifyIncident Interface"),
pointer_default(unique)
]
interface ISAFChannelNotifyIncident : IDispatch
{
[id(DISPID_SAF_CNOTI_ADD), helpstring("method onIncidentAdded")] HRESULT onIncidentAdded(ISAFChannel * ch, ISAFIncidentItem * inc, long n);
[id(DISPID_SAF_CNOTI_REMOVE), helpstring("method onIncidentRemoved")] HRESULT onIncidentRemoved(ISAFChannel * ch, ISAFIncidentItem * inc, long n);
[id(DISPID_SAF_CNOTI_UPDATE), helpstring("method onIncidentUpdated")] HRESULT onIncidentUpdated(ISAFChannel * ch, ISAFIncidentItem * inc, long n);
[id(DISPID_SAF_CNOTI_CHUPDATE), helpstring("method onChannelUpdated")] HRESULT onChannelUpdated(ISAFChannel * ch, long dwCode, long n);
};