//+------------------------------------------------------------------------- // // Microsoft Windows // // Copyright (C) Microsoft Corporation, 1996 - 1999 // // File: pstgserv.idl // //-------------------------------------------------------------------------- [ uuid(af4ae0d0-a37f-11cf-8d73-00aa004cd01a), object, pointer_default(unique) ] interface IPropertyStorageServer : IUnknown { import "objidl.idl"; import "propidl.idl"; typedef enum _EnumImplementation { PROPIMP_UNKNOWN = 0, PROPIMP_DOCFILE_QI, // Use docfile and use QI PROPIMP_DOCFILE_OLE32, // Use docfile and use OLE32 Stg*Prop*Stg APIs PROPIMP_DOCFILE_IPROP, // Use docfile and use IPROP Stg*Prop*Stg APIs PROPIMP_STORAGE, // Use NTFS Structured Storage PROPIMP_NTFS // Use NTFS native property sets } EnumImplementation; typedef enum _EnumRestrictions { RESTRICT_NONE = 0, RESTRICT_UNICODE_ONLY = 1, RESTRICT_SIMPLE_ONLY = 2, RESTRICT_NON_HIERARCHICAL = 4, RESTRICT_DIRECT_ONLY = 8 } EnumRestrictions; HRESULT StgOpenPropStg( [in, string] const OLECHAR *pwcsName, [in] REFFMTID fmtid, [in] DWORD grfMode, [out] IPropertyStorage **pppstg ); HRESULT StgOpenPropSetStg( [in, string] const OLECHAR *pwcsName, [in] DWORD grfMode, [out] IPropertySetStorage **pppsstg ); HRESULT MarshalUnknown( [in] IUnknown *punk ); HRESULT Initialize( [in] EnumImplementation enumImplementation, [in] ULONG Restrictions ); }