Commit 1843cd35 authored by Alexandre Julliard's avatar Alexandre Julliard

Converted servprov.h to IDL.

parent 802ebc11
...@@ -9,6 +9,7 @@ IDL_SRCS = \ ...@@ -9,6 +9,7 @@ IDL_SRCS = \
oaidl.idl \ oaidl.idl \
objidl.idl \ objidl.idl \
oleidl.idl \ oleidl.idl \
servprov.idl \
strmif.idl \ strmif.idl \
unknwn.idl \ unknwn.idl \
wtypes.idl wtypes.idl
...@@ -145,7 +146,6 @@ WINDOWS_INCLUDES = \ ...@@ -145,7 +146,6 @@ WINDOWS_INCLUDES = \
rpcndr.h \ rpcndr.h \
rpcnterr.h \ rpcnterr.h \
rpcproxy.h \ rpcproxy.h \
servprov.h \
setupapi.h \ setupapi.h \
shellapi.h \ shellapi.h \
shlguid.h \ shlguid.h \
......
/* /*** Autogenerated by WIDL 0.1 from servprov.idl - Do not edit ***/
* Copyright (C) 1999 Francois Gouget
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
#include <rpc.h> #include <rpc.h>
#include <rpcndr.h> #include <rpcndr.h>
#ifndef COM_NO_WINDOWS_H
#include <windows.h> #ifndef __WIDL_SERVPROV_H
#include <ole2.h> #define __WIDL_SERVPROV_H
#ifdef __cplusplus
extern "C" {
#endif
#include <objidl.h>
#ifndef __IServiceProvider_FWD_DEFINED__
#define __IServiceProvider_FWD_DEFINED__
typedef struct IServiceProvider IServiceProvider;
#endif #endif
#ifndef __WINE_SERVPROV_H typedef IServiceProvider *LPSERVICEPROVIDER;
#define __WINE_SERVPROV_H
/*****************************************************************************
* IServiceProvider interface
*/
#ifndef __IServiceProvider_INTERFACE_DEFINED__
#define __IServiceProvider_INTERFACE_DEFINED__
#include <objbase.h> DEFINE_GUID(IID_IServiceProvider, 0x6d5140c1, 0x7436, 0x11ce, 0x80,0x34, 0x00,0xaa,0x00,0x60,0x09,0xfa);
#if defined(__cplusplus) && !defined(CINTERFACE)
struct IServiceProvider : public IUnknown
{
virtual HRESULT STDMETHODCALLTYPE QueryService(
REFGUID guidService,
REFIID riid,
void** ppvObject) = 0;
};
#else
typedef struct IServiceProviderVtbl IServiceProviderVtbl;
struct IServiceProvider {
const IServiceProviderVtbl* lpVtbl;
};
struct IServiceProviderVtbl {
ICOM_MSVTABLE_COMPAT_FIELDS
/***************************************************************************** /*** IUnknown methods ***/
* Predeclare the interfaces HRESULT (STDMETHODCALLTYPE *QueryInterface)(
*/ IServiceProvider* This,
DEFINE_GUID (IID_IServiceProvider, 0x6d5140c1L, 0x7436, 0x11ce, 0x80, 0x34, 0x00, 0xaa, 0x00, 0x60, 0x09, 0xfa); REFIID riid,
typedef struct IServiceProvider IServiceProvider,*LPSERVICEPROVIDER; void** ppvObject);
ULONG (STDMETHODCALLTYPE *AddRef)(
IServiceProvider* This);
/***************************************************************************** ULONG (STDMETHODCALLTYPE *Release)(
* IServiceProvider interface IServiceProvider* This);
*/
#define INTERFACE IServiceProvider /*** IServiceProvider methods ***/
#define IServiceProvider_METHODS \ HRESULT (STDMETHODCALLTYPE *QueryService)(
IUnknown_METHODS \ IServiceProvider* This,
STDMETHOD(QueryService)(THIS_ REFGUID guidService, REFIID riid, void **ppvObject) PURE; REFGUID guidService,
ICOM_DEFINE(IServiceProvider,IUnknown) REFIID riid,
#undef INTERFACE void** ppvObject);
};
#ifdef COBJMACROS
/*** IUnknown methods ***/ /*** IUnknown methods ***/
#define IServiceProvider_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b) #define IServiceProvider_QueryInterface(p,a,b) (p)->lpVtbl->QueryInterface(p,a,b)
#define IServiceProvider_AddRef(p) (p)->lpVtbl->AddRef(p) #define IServiceProvider_AddRef(p) (p)->lpVtbl->AddRef(p)
#define IServiceProvider_Release(p) (p)->lpVtbl->Release(p) #define IServiceProvider_Release(p) (p)->lpVtbl->Release(p)
/*** IServiceProvider methods ***/ /*** IServiceProvider methods ***/
#define IServiceProvider_QueryService(p,a,b,c) (p)->lpVtbl->QueryService(p,a,b,c) #define IServiceProvider_QueryService(p,a,b,c) (p)->lpVtbl->QueryService(p,a,b,c)
#endif #endif
#define IServiceProvider_METHODS \
ICOM_MSVTABLE_COMPAT_FIELDS \
/*** IUnknown methods ***/ \
STDMETHOD_(HRESULT,QueryInterface)(THIS_ REFIID riid, void** ppvObject) PURE; \
STDMETHOD_(ULONG,AddRef)(THIS) PURE; \
STDMETHOD_(ULONG,Release)(THIS) PURE; \
/*** IServiceProvider methods ***/ \
STDMETHOD_(HRESULT,QueryService)(THIS_ REFGUID guidService, REFIID riid, void** ppvObject) PURE;
HRESULT CALLBACK IServiceProvider_RemoteQueryService_Proxy(
IServiceProvider* This,
REFGUID guidService,
REFIID riid,
IUnknown** ppvObject);
void __RPC_STUB IServiceProvider_RemoteQueryService_Stub(
struct IRpcStubBuffer* This,
struct IRpcChannelBuffer* pRpcChannelBuffer,
PRPC_MESSAGE pRpcMessage,
DWORD* pdwStubPhase);
HRESULT CALLBACK IServiceProvider_QueryService_Proxy(
IServiceProvider* This,
REFGUID guidService,
REFIID riid,
void** ppvObject);
HRESULT __RPC_STUB IServiceProvider_QueryService_Stub(
IServiceProvider* This,
REFGUID guidService,
REFIID riid,
IUnknown** ppvObject);
#endif /* __WINE_SERVPROV_H */ #endif /* __IServiceProvider_INTERFACE_DEFINED__ */
#ifdef __cplusplus
}
#endif
#endif /* __WIDL_SERVPROV_H */
/*
* Copyright (C) 1999 Francois Gouget
* Copyright (C) 2003 Alexandre Julliard
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
*/
import "objidl.idl";
/*****************************************************************************
* IServiceProvider interface
*/
[
object,
uuid(6d5140c1-7436-11ce-8034-00aa006009fa),
pointer_default(unique)
]
interface IServiceProvider : IUnknown
{
typedef [unique] IServiceProvider *LPSERVICEPROVIDER;
[local]
HRESULT QueryService(
[in] REFGUID guidService,
[in] REFIID riid,
[out] void ** ppvObject);
[call_as(QueryService)]
HRESULT RemoteQueryService(
[in] REFGUID guidService,
[in] REFIID riid,
[out, iid_is(riid)] IUnknown ** ppvObject);
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment