setupapi: Fixed returns values and added a test for SetupDiOpenClassRegKeyExW.
[wine] / include / iads.idl
1 /*
2  * Copyright 2005 Francois Gouget
3  *
4  * This library is free software; you can redistribute it and/or
5  * modify it under the terms of the GNU Lesser General Public
6  * License as published by the Free Software Foundation; either
7  * version 2.1 of the License, or (at your option) any later version.
8  *
9  * This library is distributed in the hope that it will be useful,
10  * but WITHOUT ANY WARRANTY; without even the implied warranty of
11  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
12  * Lesser General Public License for more details.
13  *
14  * You should have received a copy of the GNU Lesser General Public
15  * License along with this library; if not, write to the Free Software
16  * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
17  */
18
19 import "oaidl.idl";
20
21
22 /*****************************************************************************
23  *    IADsContainer interface
24  */
25 [
26     object,
27     uuid(001677d0-fd16-11ce-abc4-02608c9e7553)
28 ]
29 interface IADsContainer: IDispatch
30 {
31     [propget] HRESULT Count(
32         [out, retval] long *retval);
33     [propget, restricted] HRESULT _NewEnum(
34         [out, retval] IUnknown **retval);
35     [propget] HRESULT Filter(
36         [out, retval] VARIANT *pvFilter);
37     [propput] HRESULT Filter(
38         [in] VARIANT vFilter);
39     [propget] HRESULT Hints(
40         [out, retval] VARIANT *pvHints);
41     [propput] HRESULT Hints(
42         [in] VARIANT vHints);
43     HRESULT GetObject(
44         [in] BSTR bstrClassName,
45         [in] BSTR bstrRelativeName,
46         [out, retval] IDispatch **ppObject);
47     HRESULT Create(
48         [in] BSTR bstrClassName,
49         [in] BSTR bstrRelativeName,
50         [out, retval] IDispatch **ppObject);
51     HRESULT Delete(
52         [in] BSTR bstrClassName,
53         [in] BSTR bstrRelativeName);
54     HRESULT CopyHere(
55         [in] BSTR bstrSourceName,
56         [in] BSTR bstrNewName,
57         [out, retval] IDispatch **ppObject);
58     HRESULT MoveHere(
59         [in] BSTR bstrSourceName,
60         [in] BSTR bstrNewName,
61         [out, retval] IDispatch **ppObject);
62 }