//+------------------------------------------------------------------------- // // Microsoft Windows // // Copyright (C) Microsoft Corporation, 1997 - 1999 // // File: catdbrpc.idl // //-------------------------------------------------------------------------- import "unknwn.idl"; //////////////////////////// // Interfaces [ uuid(F50AAC00-C7F3-428e-A022-A6B71BFB9D43), version(1.0), pointer_default(unique) ] interface ICatDBSvc { DWORD SSCatDBAddCatalog( [in] handle_t h, [in] DWORD dwFlags, [in] LPCWSTR pwszSubSysGUID, [in] LPCWSTR pwszCatalogFile, [in][unique] LPCWSTR pwszCatName, [out] LPWSTR *ppwszCatalogNameUsed ); DWORD SSCatDBDeleteCatalog( [in] handle_t h, [in] DWORD dwFlags, [in] LPCWSTR pwszSubSysGUID, [in] LPCWSTR pwszCatalogFile ); DWORD SSCatDBEnumCatalogs( [in] handle_t h, [in] DWORD dwFlags, [in] LPCWSTR pwszSubSysGUID, [in, range(0,256)] DWORD cbHash, // currently, hash size is 20, so 256 max is no problem [in][size_is(cbHash)] BYTE* pbHash, [out] DWORD* pdwNumCatalogNames, [out][size_is(,*pdwNumCatalogNames)] LPWSTR** pppwszCatalogNames ); DWORD SSCatDBRegisterForChangeNotification( [in] handle_t h, [in] DWORD_PTR EventHandle, [in] DWORD dwFlags, [in] LPCWSTR pwszSubSysGUID, [in] BOOL fUnRegister ); DWORD SSCatDBPauseResumeService( [in] handle_t h, [in] DWORD dwFlags, [in] BOOL fResume ); }