ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

std_ole_v1.idl
Go to the documentation of this file.
00001 /*
00002  * Copyright (C) 2003 Robert Shearman
00003  *               2005 Huw Davies
00004  *
00005  * This library is free software; you can redistribute it and/or
00006  * modify it under the terms of the GNU Lesser General Public
00007  * License as published by the Free Software Foundation; either
00008  * version 2.1 of the License, or (at your option) any later version.
00009  *
00010  * This library is distributed in the hope that it will be useful,
00011  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00012  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00013  * Lesser General Public License for more details.
00014  *
00015  * You should have received a copy of the GNU Lesser General Public
00016  * License along with this library; if not, write to the Free Software
00017  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
00018  *
00019  */
00020 
00021 [
00022   uuid(00020430-0000-0000-C000-000000000046),
00023   restricted,
00024   version(1.0),
00025   helpstring("OLE Automation")
00026 ]
00027 library stdole
00028 {
00029     /* typedefs aren't stored in the type library.
00030            These type names are known by the type compiler so it
00031            doesn't really matter what we define them as. */
00032 
00033     typedef void *VARIANT;
00034     typedef wchar_t *BSTR;
00035     typedef unsigned long SCODE;
00036     typedef unsigned long HRESULT;
00037     
00038     typedef struct GUID {
00039         unsigned long  Data1;
00040         unsigned short Data2;
00041         unsigned short Data3;
00042         unsigned char  Data4[ 8 ];
00043     } GUID;
00044 
00045     typedef struct DISPPARAMS {
00046         VARIANT *rgvarg;
00047         long *rgdispidNamedArgs;
00048         unsigned int cArgs;
00049         unsigned int cNamedArgs;
00050     } DISPPARAMS;
00051 
00052     typedef struct EXCEPINFO {
00053         unsigned short wCode;
00054         unsigned short wReserved;
00055         BSTR  bstrSource;
00056         BSTR  bstrDescription;
00057         BSTR  bstrHelpFile;
00058         unsigned long dwHelpContext;
00059         void *pvReserved;
00060         void *pfnDeferredFillIn;
00061         SCODE scode;
00062     } EXCEPINFO;
00063 
00064     [
00065         odl,
00066         uuid(00000000-0000-0000-C000-000000000046)
00067     ]
00068     interface IUnknown
00069     {
00070         [restricted]
00071         HRESULT QueryInterface(
00072                                [in] GUID *riid,
00073                                [out] void **ppvObj);
00074 
00075         [restricted]
00076         unsigned long AddRef();
00077 
00078         [restricted]
00079         unsigned long Release();
00080     }
00081 
00082     [
00083         odl,
00084         uuid(00020400-0000-0000-C000-000000000046)
00085     ]
00086     interface IDispatch : IUnknown
00087     {
00088         [restricted]
00089         HRESULT GetTypeInfoCount(
00090                                  [out] unsigned int *pctinfo);
00091 
00092         [restricted]
00093         HRESULT GetTypeInfo(
00094                             [in] unsigned int itinfo,
00095                             [in] unsigned long lcid,
00096                             [out] void **pptinfo);
00097 
00098         [restricted]
00099         HRESULT GetIDsOfNames(
00100                               [in] GUID *riid,
00101                               [in] char **rgszNames,
00102                               [in] unsigned int cNames,
00103                               [in] unsigned long lcid,
00104                               [out] long *rgdispid);
00105 
00106         [restricted]
00107         HRESULT Invoke(
00108                        [in] long dispidMember,
00109                        [in] GUID *riid,
00110                        [in] unsigned long lcid,
00111                        [in] unsigned short wFlags,
00112                        [in] DISPPARAMS *pdispparams,
00113                        [out] VARIANT *pvarResult,
00114                        [out] EXCEPINFO *pexcepinfo,
00115                        [out] unsigned int *puArgErr);
00116 
00117     }
00118 
00119     [
00120         odl,
00121         uuid(00020404-0000-0000-C000-000000000046)
00122     ]
00123     interface IEnumVARIANT : IUnknown
00124     {
00125         HRESULT Next(
00126                      [in] unsigned long celt,
00127                      [in] VARIANT *rgvar,
00128                      [out] unsigned long *pceltFetched);
00129 
00130         HRESULT Skip(
00131                      [in] unsigned long celt);
00132 
00133         HRESULT Reset();
00134 
00135         HRESULT Clone(
00136                       [out] IEnumVARIANT **ppenum);
00137     }
00138 };

Generated on Sat May 26 2012 04:25:09 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.