VirtualBox

source: vbox/trunk/src/VBox/Additions/WINNT/Graphics/Wine/include/pstore.idl@ 19678

Last change on this file since 19678 was 19678, checked in by vboxsync, 16 years ago

opengl: update wine to 1.1.21, add d3d9.dll to build list

  • Property svn:eol-style set to native
File size: 7.1 KB
Line 
1/*
2 * Copyright (C) 2004 Mike McCormack
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/*
20 * Sun LGPL Disclaimer: For the avoidance of doubt, except that if any license choice
21 * other than GPL or LGPL is available it will apply instead, Sun elects to use only
22 * the Lesser General Public License version 2.1 (LGPLv2) at this time for any software where
23 * a choice of LGPL license versions is made available with the language indicating
24 * that LGPLv2 or any later version may be used, or where a choice of which version
25 * of the LGPL is applied is otherwise unspecified.
26 */
27
28import "oaidl.idl";
29
30cpp_quote("#define PST_KEY_CURRENT_USER 0")
31cpp_quote("#define PST_KEY_LOCAL_MACHINE 1")
32
33cpp_quote("#define PST_E_OK 0x00000000L")
34cpp_quote("#define PST_E_TYPE_EXISTS 0x800C0004L")
35
36cpp_quote("#define PST_AUTHENTICODE 1")
37cpp_quote("#define PST_BINARY_CHECK 2")
38cpp_quote("#define PST_SECURITY_DESCRIPTOR 4")
39
40typedef DWORD PST_ACCESSMODE;
41typedef DWORD PST_ACCESSCLAUSETYPE;
42typedef DWORD PST_KEY;
43typedef DWORD PST_PROVIDERCAPABILITIES;
44typedef GUID PST_PROVIDERID, *PPST_PROVIDERID;
45
46typedef struct _PST_PROVIDERINFO
47{
48 DWORD cbSize;
49 PST_PROVIDERID ID;
50 PST_PROVIDERCAPABILITIES Capabilities;
51 LPWSTR szProviderName;
52} PST_PROVIDERINFO, *PPST_PROVIDERINFO;
53
54typedef struct _PST_PROMPTINFO
55{
56 DWORD cbSize;
57 DWORD dwPromptFlags;
58 HWND hwndApp;
59 LPCWSTR szPrompt;
60} PST_PROMPTINFO, *PPST_PROMPTINFO;
61
62typedef struct {
63 DWORD cbSize;
64 PST_ACCESSCLAUSETYPE ClauseType;
65 DWORD cbClauseData;
66 BYTE* pbClauseData;
67} PST_ACCESSCLAUSE, *PPST_ACCESSCLAUSE;
68
69typedef struct {
70 DWORD cbSize;
71 PST_ACCESSMODE AccessModeFlags;
72 DWORD cClauses;
73 PST_ACCESSCLAUSE* rgClauses;
74} PST_ACCESSRULE, *PPST_ACCESSRULE;
75
76typedef struct {
77 DWORD cbSize;
78 DWORD cClause;
79 PST_ACCESSRULE* rgRules;
80} PST_ACCESSRULESET, *PPST_ACCESSRULESET;
81
82typedef struct {
83 DWORD cbSize;
84 LPWSTR szDisplayName;
85} PST_TYPEINFO, *PPST_TYPEINFO;
86
87[
88 object,
89 uuid(5a6f1ec1-2db1-11d0-8c39-00c04fd9126b),
90 pointer_default(unique)
91]
92interface IEnumPStoreItems : IUnknown
93{
94 HRESULT Clone(
95 [in] IEnumPStoreItems** ppenum );
96
97 HRESULT Next(
98 [in] DWORD celt,
99 [in] LPWSTR* rgelt,
100 [in] DWORD* pceltFetched );
101
102 HRESULT Reset();
103
104 HRESULT Skip(
105 [in] DWORD celt );
106}
107
108[
109 object,
110 uuid(789c1cbf-31ee-11d0-8c39-00c04fd9126b),
111 pointer_default(unique)
112]
113interface IEnumPStoreTypes : IUnknown
114{
115 HRESULT Clone(
116 [in] IEnumPStoreTypes** ppenum );
117
118 HRESULT Next(
119 [in] DWORD celt,
120 [in] LPWSTR* rgelt,
121 [in] DWORD* pceltFetched );
122
123 HRESULT Reset();
124
125 HRESULT Skip(
126 [in] DWORD celt );
127}
128
129/*****************************************************************************
130 * IPStore interface
131 */
132[
133 object,
134 uuid(5a6f1ec0-2db1-11d0-8c39-00c04fd9126b),
135 pointer_default(unique)
136]
137interface IPStore : IUnknown
138{
139 HRESULT GetInfo(
140 [in] PPST_PROVIDERINFO* ppProperties );
141
142 HRESULT GetProvParam(
143 [in] DWORD dwParam,
144 [out] DWORD* pcbData,
145 [out] BYTE** ppbData,
146 [in] DWORD dwFlags );
147
148 HRESULT SetProvParam(
149 [in] DWORD dwParam,
150 [in] DWORD cbData,
151 [in] BYTE* pbData,
152 [in] DWORD* dwFlags );
153
154 HRESULT CreateType(
155 [in] PST_KEY Key,
156 [in] const GUID* pType,
157 [in] PPST_TYPEINFO pInfo,
158 [in] DWORD dwFlags );
159
160 HRESULT GetTypeInfo(
161 [in] PST_KEY Key,
162 [in] const GUID* pType,
163 [in] PPST_TYPEINFO** ppInfo,
164 [in] DWORD dwFlags );
165
166 HRESULT DeleteType(
167 [in] PST_KEY Key,
168 [in] const GUID* pType,
169 [in] DWORD dwFlags );
170
171 HRESULT CreateSubtype(
172 [in] PST_KEY Key,
173 [in] const GUID* pType,
174 [in] const GUID* pSubtype,
175 [in] PPST_TYPEINFO pInfo,
176 [in] PPST_ACCESSRULESET pRules,
177 [in] DWORD dwFlags );
178
179 HRESULT GetSubtypeInfo(
180 [in] PST_KEY Key,
181 [in] const GUID* pType,
182 [in] const GUID* pSubtype,
183 [in] PPST_TYPEINFO** ppInfo,
184 [in] DWORD dwFlags );
185
186 HRESULT DeleteSubtype(
187 [in] PST_KEY Key,
188 [in] const GUID* pType,
189 [in] const GUID* pSubtype,
190 [in] DWORD dwFlags );
191
192 HRESULT ReadAccessRuleset(
193 [in] PST_KEY Key,
194 [in] const GUID* pType,
195 [in] const GUID* pSubtype,
196 [in] PPST_TYPEINFO pInfo,
197 [in] PPST_ACCESSRULESET** ppRules,
198 [in] DWORD dwFlags );
199
200 HRESULT WriteAccessRuleset(
201 [in] PST_KEY Key,
202 [in] const GUID* pType,
203 [in] const GUID* pSubtype,
204 [in] PPST_TYPEINFO pInfo,
205 [in] PPST_ACCESSRULESET pRules,
206 [in] DWORD dwFlags );
207
208 HRESULT EnumTypes(
209 [in] PST_KEY Key,
210 [in] DWORD dwFlags,
211 [in] IEnumPStoreTypes** ppenum );
212
213 HRESULT EnumSubtypes(
214 [in] PST_KEY Key,
215 [in] const GUID* pType,
216 [in] DWORD dwFlags,
217 [in] IEnumPStoreTypes** ppenum );
218
219 HRESULT DeleteItem(
220 [in] PST_KEY Key,
221 [in] const GUID* pItemType,
222 [in] const GUID* pItemSubType,
223 [in] LPCWSTR szItemName,
224 [in] PPST_PROMPTINFO pPromptInfo,
225 [in] DWORD dwFlags );
226
227 HRESULT ReadItem(
228 [in] PST_KEY Key,
229 [in] const GUID* pItemType,
230 [in] const GUID* pItemSubtype,
231 [in] LPCWSTR szItemName,
232 [in] DWORD *cbData,
233 [in] BYTE** pbData,
234 [in] PPST_PROMPTINFO pPromptInfo,
235 [in] DWORD dwFlags );
236
237 HRESULT WriteItem(
238 [in] PST_KEY Key,
239 [in] const GUID* pItemType,
240 [in] const GUID* pItemSubtype,
241 [in] LPCWSTR szItemName,
242 [in] DWORD cbData,
243 [in,size_is(cbData)] BYTE *ppbData,
244 [in] PPST_PROMPTINFO pPromptInfo,
245 [in] DWORD dwDefaultConfirmationStyle,
246 [in] DWORD dwFlags);
247
248 HRESULT OpenItem(
249 [in] PST_KEY Key,
250 [in] const GUID* pItemType,
251 [in] const GUID* pItemSubtype,
252 [in] LPCWSTR szItemName,
253 [in] PST_ACCESSMODE ModeFlags,
254 [in] PPST_PROMPTINFO pProomptInfo,
255 [in] DWORD dwFlags );
256
257 HRESULT CloseItem(
258 [in] PST_KEY Key,
259 [in] const GUID* pItemType,
260 [in] const GUID* pItemSubtype,
261 [in] LPCWSTR* szItemName,
262 [in] DWORD dwFlags );
263
264 HRESULT EnumItems(
265 [in] PST_KEY Key,
266 [in] const GUID* pItemType,
267 [in] const GUID* pItemSubtype,
268 [in] DWORD dwFlags,
269 [in] IEnumPStoreItems** ppenum );
270}
Note: See TracBrowser for help on using the repository browser.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette