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.

88 lines
3.6 KiB

  1. /////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright(C) 1999 Microsoft Corporation all rights reserved.
  4. //
  5. // Module: applianceresource.idl
  6. //
  7. // Project: Chameleon
  8. //
  9. // Description: Appliance Task Interfaces
  10. //
  11. // Log:
  12. //
  13. // Who When What
  14. // --- ---- ----
  15. // TLP 01/28/1999 Original Version
  16. //
  17. /////////////////////////////////////////////////////////////////////////////
  18. import "oaidl.idl";
  19. import "ocidl.idl";
  20. //////////////////////////////////////////////////////////////////////////
  21. // IResourceRetriever Interface
  22. //////////////////////////////////////////////////////////////////////////
  23. [
  24. object,
  25. uuid(3B66C1A0-B81A-11D2-A91C-00AA00A71DCA),
  26. dual,
  27. pointer_default(unique)
  28. ]
  29. interface IResourceRetriever : IDispatch
  30. {
  31. //////////////////////////////////////////////////////////////////////
  32. //
  33. // Function: GetResourceTypes() - Retreive the types of resources
  34. // supported by the retriever
  35. //
  36. // Inputs: pResourceTypes: Pointer to a variant that on output
  37. // contains a safe array of basic strings
  38. // with each string identifying a type
  39. // of resource (stringized GUID) supported
  40. // by the retriever.
  41. //
  42. // Outputs: S_OK: Function succeeded
  43. //
  44. // E_POINTER: NULL pointer was specified
  45. //
  46. // E_INVALIDARG: Invalid argument was specified
  47. //
  48. // E_OUTOFMEMORY: Not enough memory to complete the operation
  49. //
  50. //////////////////////////////////////////////////////////////////////
  51. [id(1)]
  52. HRESULT GetResourceTypes(
  53. [out, retval] VARIANT* pResourceTypes
  54. );
  55. //////////////////////////////////////////////////////////////////////
  56. //
  57. // Function: GetResources()
  58. //
  59. // Inputs: pResourceTypes: Pointer to a variant containing a safe
  60. // safe array of basic strings with each string
  61. // identifying a type of resource
  62. // (stringized GUID) to retrieve.
  63. //
  64. // ppResources: Pointer to storage for an interface pointer
  65. // to an object that exposes the IEnumVARIANT
  66. // interface. Each variant returned from
  67. // IEnumVARIANT::Next() contains an IDispatch
  68. // pointer to a retreived resource object
  69. // (object exporting IApplianceObject).
  70. //
  71. // Outputs: S_OK: Function succeeded
  72. //
  73. // E_POINTER: NULL pointer was specified
  74. //
  75. // E_INVALIDARG: Invalid argument was specified
  76. //
  77. // E_OUTOFMEMORY: Not enough memory
  78. //
  79. //////////////////////////////////////////////////////////////////////
  80. [id(2)]
  81. HRESULT GetResources(
  82. [in] VARIANT* pResourceTypes,
  83. [out, retval] IUnknown** ppResources
  84. );
  85. };