cpp_quote ("/*++") cpp_quote(" ") cpp_quote("Copyright (c) 1997 Microsoft Corporation") cpp_quote(" ") cpp_quote("Module Name: iadm.h") cpp_quote(" ") cpp_quote(" Admin Objects Interfaces") cpp_quote(" ") cpp_quote ("--*/") cpp_quote("#ifndef _ADM_IADM_") cpp_quote("#define _ADM_IADM_") import "unknwn.idl"; import "wtypes.idl"; import "objidl.idl"; import "ocidl.idl"; import "iiscblob.h"; // Removed by POSTMIDL.SCR after IADM.H is generated! import "iadmw.idl"; import "mddef.idl"; cpp_quote("DEFINE_GUID(CLSID_MSAdminBase_A, 0x88e4ba60, 0x537b, 0x11d0, 0x9b, 0x8e, 0x0, 0xa0, 0xc9, 0x22, 0xe7, 0x3);") cpp_quote("DEFINE_GUID(IID_IMSAdminBase_A, 0xcba424f0, 0x483a, 0x11d0, 0x9d, 0x2a, 0x0,0xa0, 0xc9, 0x22, 0xe7, 0x3);") cpp_quote("DEFINE_GUID(CLSID_MSAdminBaseExe_A, 0xdf380700, 0x537d, 0x11d0, 0x9b, 0x8e, 0x0, 0xa0, 0xc9, 0x22, 0xe7, 0x3);") cpp_quote("DEFINE_GUID(IID_IMSAdminBaseSink_A, 0x1e056350, 0x761e, 0x11d0, 0x9b, 0xa1, 0x0, 0xa0, 0xc9, 0x22, 0xe7, 0x03);") cpp_quote("#define GETAdminBaseCLSIDA(IsService) ((IsService) ? CLSID_MSAdminBase_A : CLSID_MSAdminBaseExe_A)") #define ADMINDATA_MAX_NAME_LEN 256 cpp_quote("#undef CLSID_MSAdminBase ") cpp_quote("#undef CLSID_MSAdminBaseExe ") cpp_quote("#undef IID_IMSAdminBase ") cpp_quote("#undef IMSAdminBase ") cpp_quote("#undef IMSAdminBaseSink ") cpp_quote("#undef IID_IMSAdminBaseSink ") cpp_quote("#undef GETAdminBaseCLSID ") cpp_quote(" ") cpp_quote("#ifdef UNICODE ") cpp_quote("#define CLSID_MSAdminBase CLSID_MSAdminBase_W ") cpp_quote("#define CLSID_MSAdminBaseExe CLSID_MSAdminBaseExe_W ") cpp_quote("#define IID_IMSAdminBase IID_IMSAdminBase_W ") cpp_quote("#define IMSAdminBase IMSAdminBaseW ") cpp_quote("#define IMSAdminBaseSink IMSAdminBaseSinkW ") cpp_quote("#define IID_IMSAdminBaseSink IID_IMSAdminBaseSink_W ") cpp_quote("#define GETAdminBaseCLSID GETAdminBaseCLSIDW ") cpp_quote("#else ") cpp_quote("#define CLSID_MSAdminBase CLSID_MSAdminBase_A ") cpp_quote("#define CLSID_MSAdminBaseExe CLSID_MSAdminBaseExe_A ") cpp_quote("#define IID_IMSAdminBase IID_IMSAdminBase_A ") cpp_quote("#define IMSAdminBase IMSAdminBaseA ") cpp_quote("#define IMSAdminBaseSink IMSAdminBaseSinkA ") cpp_quote("#define IID_IMSAdminBaseSink IID_IMSAdminBaseSink_A ") cpp_quote("#define GETAdminBaseCLSID GETAdminBaseCLSIDA ") cpp_quote("#endif //UNICODE ") cpp_quote(" ") cpp_quote("/* ") cpp_quote("The Main Interface ") cpp_quote("*/ ") [ object, uuid(CBA424F0-483A-11D0-9D2A-00A0C922E703), pointer_default(unique) ] interface IMSAdminBaseA : IUnknown { // Interfaces HRESULT AddKey([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath); HRESULT DeleteKey([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath); HRESULT DeleteChildKeys([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath); HRESULT EnumKeys([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [out, size_is(ADMINDATA_MAX_NAME_LEN)] unsigned char *pszMDName, [in] DWORD dwMDEnumObjectIndex); HRESULT CopyKey([in] METADATA_HANDLE hMDSourceHandle, [unique, in, string] unsigned char *pszMDSourcePath, [in] METADATA_HANDLE hMDDestHandle, [unique, in, string] unsigned char *pszMDDestPath, [in] BOOL bMDOverwriteFlag, [in] BOOL bMDCopyFlag); HRESULT RenameKey([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [unique, in, string] unsigned char *pszMDNewName); [local] HRESULT SetData([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [in] PMETADATA_RECORD pmdrMDData); [call_as(SetData)] HRESULT R_SetData([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [in] PMETADATA_RECORD pmdrMDData); [local] HRESULT GetData([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [in, out] PMETADATA_RECORD pmdrMDData, [out] DWORD *pdwMDRequiredDataLen); [call_as(GetData)] HRESULT R_GetData([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [in, out] PMETADATA_RECORD pmdrMDData, [out] DWORD *pdwMDRequiredDataLen, [out] struct _IIS_CRYPTO_BLOB **ppDataBlob); HRESULT DeleteData([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [in] DWORD dwMDIdentifier, [in] DWORD dwMDDataType); [local] HRESULT EnumData([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [in, out] PMETADATA_RECORD pmdrMDData, [in] DWORD dwMDEnumDataIndex, [out] DWORD *pdwMDRequiredDataLen); [call_as(EnumData)] HRESULT R_EnumData([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [in, out] PMETADATA_RECORD pmdrMDData, [in] DWORD dwMDEnumDataIndex, [out] DWORD *pdwMDRequiredDataLen, [out] struct _IIS_CRYPTO_BLOB **ppDataBlob); [local] HRESULT GetAllData([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [in] DWORD dwMDAttributes, [in] DWORD dwMDUserType, [in] DWORD dwMDDataType, [out] DWORD *pdwMDNumDataEntries, [out] DWORD *pdwMDDataSetNumber, [in] DWORD dwMDBufferSize, [out, size_is(dwMDBufferSize)] unsigned char *pbBuffer, [out] DWORD *pdwMDRequiredBufferSize); [call_as(GetAllData)] HRESULT R_GetAllData([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [in] DWORD dwMDAttributes, [in] DWORD dwMDUserType, [in] DWORD dwMDDataType, [out] DWORD *pdwMDNumDataEntries, [out] DWORD *pdwMDDataSetNumber, [in] DWORD dwMDBufferSize, [out] DWORD *pdwMDRequiredBufferSize, [out] struct _IIS_CRYPTO_BLOB **ppDataBlob); HRESULT DeleteAllData([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [in] DWORD dwMDUserType, [in] DWORD dwMDDataType); HRESULT CopyData([in] METADATA_HANDLE hMDSourceHandle, [unique, in, string] unsigned char *pszMDSourcePath, [in] METADATA_HANDLE hMDDestHandle, [unique, in, string] unsigned char *pszMDDestPath, [in] DWORD dwMDAttributes, [in] DWORD dwMDUserType, [in] DWORD dwMDDataType, [in] BOOL bMDCopyFlag); HRESULT OpenKey([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [in] DWORD dwMDAccessRequested, [in] DWORD dwMDTimeOut, [out] PMETADATA_HANDLE phMDNewHandle); HRESULT CloseKey([in] METADATA_HANDLE hMDHandle); HRESULT ChangePermissions([in] METADATA_HANDLE hMDHandle, [in] DWORD dwMDTimeOut, [in] DWORD dwMDAccessRequested); HRESULT SaveData(); HRESULT GetHandleInfo([in] METADATA_HANDLE hMDHandle, [out] PMETADATA_HANDLE_INFO pmdhiInfo); HRESULT GetSystemChangeNumber([out] DWORD *pdwSystemChangeNumber); HRESULT GetDataSetNumber([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [out] DWORD *pdwMDDataSetNumber); HRESULT SetLastChangeTime([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [in] PFILETIME pftMDLastChangeTime, [in] BOOL bLocalTime); HRESULT GetLastChangeTime([in] METADATA_HANDLE hMDHandle, [unique, in, string] unsigned char *pszMDPath, [out] PFILETIME pftMDLastChangeTime, [in] BOOL bLocalTime); [local, restricted] HRESULT KeyExchangePhase1(); [local, restricted] HRESULT KeyExchangePhase2(); [call_as(KeyExchangePhase1)] HRESULT R_KeyExchangePhase1( [unique, in] struct _IIS_CRYPTO_BLOB *pClientKeyExchangeKeyBlob, [unique, in] struct _IIS_CRYPTO_BLOB *pClientSignatureKeyBlob, [out] struct _IIS_CRYPTO_BLOB **ppServerKeyExchangeKeyBlob, [out] struct _IIS_CRYPTO_BLOB **ppServerSignatureKeyBlob, [out] struct _IIS_CRYPTO_BLOB **ppServerSessionKeyBlob ); [call_as(KeyExchangePhase2)] HRESULT R_KeyExchangePhase2( [unique, in] struct _IIS_CRYPTO_BLOB *pClientSessionKeyBlob, [unique, in] struct _IIS_CRYPTO_BLOB *pClientHashBlob, [out] struct _IIS_CRYPTO_BLOB **ppServerHashBlob ); HRESULT UnmarshallMe( [out] IMSAdminBaseA **pMe ); }; // // IID_IMSAdminBaseSink_A // [ object, uuid(1E056350-761E-11d0-9BA1-00A0C922E703), pointer_default(unique) ] interface IMSAdminBaseSinkA:IUnknown { HRESULT SinkNotify( [in] DWORD dwMDNumElements, [in, size_is(dwMDNumElements)] MD_CHANGE_OBJECT_A pcoChangeList[]); } cpp_quote("#endif")