Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

55 lines
1.7 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. //
  5. // Copyright (C) Microsoft Corporation, 1996 - 1999
  6. //
  7. // File: pstgserv.idl
  8. //
  9. //--------------------------------------------------------------------------
  10. [ uuid(af4ae0d0-a37f-11cf-8d73-00aa004cd01a),
  11. object,
  12. pointer_default(unique)
  13. ]
  14. interface IPropertyStorageServer : IUnknown
  15. {
  16. import "objidl.idl";
  17. import "propidl.idl";
  18. typedef enum _EnumImplementation
  19. {
  20. PROPIMP_UNKNOWN = 0,
  21. PROPIMP_DOCFILE_QI, // Use docfile and use QI
  22. PROPIMP_DOCFILE_OLE32, // Use docfile and use OLE32 Stg*Prop*Stg APIs
  23. PROPIMP_DOCFILE_IPROP, // Use docfile and use IPROP Stg*Prop*Stg APIs
  24. PROPIMP_STORAGE, // Use NTFS Structured Storage
  25. PROPIMP_NTFS // Use NTFS native property sets
  26. } EnumImplementation;
  27. typedef enum _EnumRestrictions
  28. {
  29. RESTRICT_NONE = 0,
  30. RESTRICT_UNICODE_ONLY = 1,
  31. RESTRICT_SIMPLE_ONLY = 2,
  32. RESTRICT_NON_HIERARCHICAL = 4,
  33. RESTRICT_DIRECT_ONLY = 8
  34. } EnumRestrictions;
  35. HRESULT StgOpenPropStg( [in, string] const OLECHAR *pwcsName,
  36. [in] REFFMTID fmtid,
  37. [in] DWORD grfMode,
  38. [out] IPropertyStorage **pppstg );
  39. HRESULT StgOpenPropSetStg( [in, string] const OLECHAR *pwcsName,
  40. [in] DWORD grfMode,
  41. [out] IPropertySetStorage **pppsstg );
  42. HRESULT MarshalUnknown( [in] IUnknown *punk );
  43. HRESULT Initialize( [in] EnumImplementation enumImplementation,
  44. [in] ULONG Restrictions );
  45. }