master
1/*** Autogenerated by WIDL 10.4 from include/credentialprovider.idl - Do not edit ***/
2
3#ifdef _WIN32
4#ifndef __REQUIRED_RPCNDR_H_VERSION__
5#define __REQUIRED_RPCNDR_H_VERSION__ 475
6#endif
7#include <rpc.h>
8#include <rpcndr.h>
9#endif
10
11#ifndef COM_NO_WINDOWS_H
12#include <windows.h>
13#include <ole2.h>
14#endif
15
16#ifndef __credentialprovider_h__
17#define __credentialprovider_h__
18
19/* Forward declarations */
20
21#ifndef __ICredentialProviderCredential_FWD_DEFINED__
22#define __ICredentialProviderCredential_FWD_DEFINED__
23typedef interface ICredentialProviderCredential ICredentialProviderCredential;
24#ifdef __cplusplus
25interface ICredentialProviderCredential;
26#endif /* __cplusplus */
27#endif
28
29#ifndef __IQueryContinueWithStatus_FWD_DEFINED__
30#define __IQueryContinueWithStatus_FWD_DEFINED__
31typedef interface IQueryContinueWithStatus IQueryContinueWithStatus;
32#ifdef __cplusplus
33interface IQueryContinueWithStatus;
34#endif /* __cplusplus */
35#endif
36
37#ifndef __IConnectableCredentialProviderCredential_FWD_DEFINED__
38#define __IConnectableCredentialProviderCredential_FWD_DEFINED__
39typedef interface IConnectableCredentialProviderCredential IConnectableCredentialProviderCredential;
40#ifdef __cplusplus
41interface IConnectableCredentialProviderCredential;
42#endif /* __cplusplus */
43#endif
44
45#ifndef __ICredentialProviderCredentialEvents_FWD_DEFINED__
46#define __ICredentialProviderCredentialEvents_FWD_DEFINED__
47typedef interface ICredentialProviderCredentialEvents ICredentialProviderCredentialEvents;
48#ifdef __cplusplus
49interface ICredentialProviderCredentialEvents;
50#endif /* __cplusplus */
51#endif
52
53#ifndef __ICredentialProvider_FWD_DEFINED__
54#define __ICredentialProvider_FWD_DEFINED__
55typedef interface ICredentialProvider ICredentialProvider;
56#ifdef __cplusplus
57interface ICredentialProvider;
58#endif /* __cplusplus */
59#endif
60
61#ifndef __ICredentialProviderEvents_FWD_DEFINED__
62#define __ICredentialProviderEvents_FWD_DEFINED__
63typedef interface ICredentialProviderEvents ICredentialProviderEvents;
64#ifdef __cplusplus
65interface ICredentialProviderEvents;
66#endif /* __cplusplus */
67#endif
68
69#ifndef __ICredentialProviderFilter_FWD_DEFINED__
70#define __ICredentialProviderFilter_FWD_DEFINED__
71typedef interface ICredentialProviderFilter ICredentialProviderFilter;
72#ifdef __cplusplus
73interface ICredentialProviderFilter;
74#endif /* __cplusplus */
75#endif
76
77#ifndef __ICredentialProviderCredential2_FWD_DEFINED__
78#define __ICredentialProviderCredential2_FWD_DEFINED__
79typedef interface ICredentialProviderCredential2 ICredentialProviderCredential2;
80#ifdef __cplusplus
81interface ICredentialProviderCredential2;
82#endif /* __cplusplus */
83#endif
84
85#ifndef __ICredentialProviderCredentialWithFieldOptions_FWD_DEFINED__
86#define __ICredentialProviderCredentialWithFieldOptions_FWD_DEFINED__
87typedef interface ICredentialProviderCredentialWithFieldOptions ICredentialProviderCredentialWithFieldOptions;
88#ifdef __cplusplus
89interface ICredentialProviderCredentialWithFieldOptions;
90#endif /* __cplusplus */
91#endif
92
93#ifndef __ICredentialProviderCredentialEvents2_FWD_DEFINED__
94#define __ICredentialProviderCredentialEvents2_FWD_DEFINED__
95typedef interface ICredentialProviderCredentialEvents2 ICredentialProviderCredentialEvents2;
96#ifdef __cplusplus
97interface ICredentialProviderCredentialEvents2;
98#endif /* __cplusplus */
99#endif
100
101#ifndef __ICredentialProviderUser_FWD_DEFINED__
102#define __ICredentialProviderUser_FWD_DEFINED__
103typedef interface ICredentialProviderUser ICredentialProviderUser;
104#ifdef __cplusplus
105interface ICredentialProviderUser;
106#endif /* __cplusplus */
107#endif
108
109#ifndef __ICredentialProviderUserArray_FWD_DEFINED__
110#define __ICredentialProviderUserArray_FWD_DEFINED__
111typedef interface ICredentialProviderUserArray ICredentialProviderUserArray;
112#ifdef __cplusplus
113interface ICredentialProviderUserArray;
114#endif /* __cplusplus */
115#endif
116
117#ifndef __ICredentialProviderSetUserArray_FWD_DEFINED__
118#define __ICredentialProviderSetUserArray_FWD_DEFINED__
119typedef interface ICredentialProviderSetUserArray ICredentialProviderSetUserArray;
120#ifdef __cplusplus
121interface ICredentialProviderSetUserArray;
122#endif /* __cplusplus */
123#endif
124
125#ifndef __PasswordCredentialProvider_FWD_DEFINED__
126#define __PasswordCredentialProvider_FWD_DEFINED__
127#ifdef __cplusplus
128typedef class PasswordCredentialProvider PasswordCredentialProvider;
129#else
130typedef struct PasswordCredentialProvider PasswordCredentialProvider;
131#endif /* defined __cplusplus */
132#endif /* defined __PasswordCredentialProvider_FWD_DEFINED__ */
133
134#ifndef __V1PasswordCredentialProvider_FWD_DEFINED__
135#define __V1PasswordCredentialProvider_FWD_DEFINED__
136#ifdef __cplusplus
137typedef class V1PasswordCredentialProvider V1PasswordCredentialProvider;
138#else
139typedef struct V1PasswordCredentialProvider V1PasswordCredentialProvider;
140#endif /* defined __cplusplus */
141#endif /* defined __V1PasswordCredentialProvider_FWD_DEFINED__ */
142
143#ifndef __PINLogonCredentialProvider_FWD_DEFINED__
144#define __PINLogonCredentialProvider_FWD_DEFINED__
145#ifdef __cplusplus
146typedef class PINLogonCredentialProvider PINLogonCredentialProvider;
147#else
148typedef struct PINLogonCredentialProvider PINLogonCredentialProvider;
149#endif /* defined __cplusplus */
150#endif /* defined __PINLogonCredentialProvider_FWD_DEFINED__ */
151
152#ifndef __NPCredentialProvider_FWD_DEFINED__
153#define __NPCredentialProvider_FWD_DEFINED__
154#ifdef __cplusplus
155typedef class NPCredentialProvider NPCredentialProvider;
156#else
157typedef struct NPCredentialProvider NPCredentialProvider;
158#endif /* defined __cplusplus */
159#endif /* defined __NPCredentialProvider_FWD_DEFINED__ */
160
161#ifndef __SmartcardCredentialProvider_FWD_DEFINED__
162#define __SmartcardCredentialProvider_FWD_DEFINED__
163#ifdef __cplusplus
164typedef class SmartcardCredentialProvider SmartcardCredentialProvider;
165#else
166typedef struct SmartcardCredentialProvider SmartcardCredentialProvider;
167#endif /* defined __cplusplus */
168#endif /* defined __SmartcardCredentialProvider_FWD_DEFINED__ */
169
170#ifndef __V1SmartcardCredentialProvider_FWD_DEFINED__
171#define __V1SmartcardCredentialProvider_FWD_DEFINED__
172#ifdef __cplusplus
173typedef class V1SmartcardCredentialProvider V1SmartcardCredentialProvider;
174#else
175typedef struct V1SmartcardCredentialProvider V1SmartcardCredentialProvider;
176#endif /* defined __cplusplus */
177#endif /* defined __V1SmartcardCredentialProvider_FWD_DEFINED__ */
178
179#ifndef __SmartcardPinProvider_FWD_DEFINED__
180#define __SmartcardPinProvider_FWD_DEFINED__
181#ifdef __cplusplus
182typedef class SmartcardPinProvider SmartcardPinProvider;
183#else
184typedef struct SmartcardPinProvider SmartcardPinProvider;
185#endif /* defined __cplusplus */
186#endif /* defined __SmartcardPinProvider_FWD_DEFINED__ */
187
188#ifndef __SmartcardReaderSelectionProvider_FWD_DEFINED__
189#define __SmartcardReaderSelectionProvider_FWD_DEFINED__
190#ifdef __cplusplus
191typedef class SmartcardReaderSelectionProvider SmartcardReaderSelectionProvider;
192#else
193typedef struct SmartcardReaderSelectionProvider SmartcardReaderSelectionProvider;
194#endif /* defined __cplusplus */
195#endif /* defined __SmartcardReaderSelectionProvider_FWD_DEFINED__ */
196
197#ifndef __SmartcardWinRTProvider_FWD_DEFINED__
198#define __SmartcardWinRTProvider_FWD_DEFINED__
199#ifdef __cplusplus
200typedef class SmartcardWinRTProvider SmartcardWinRTProvider;
201#else
202typedef struct SmartcardWinRTProvider SmartcardWinRTProvider;
203#endif /* defined __cplusplus */
204#endif /* defined __SmartcardWinRTProvider_FWD_DEFINED__ */
205
206#ifndef __GenericCredentialProvider_FWD_DEFINED__
207#define __GenericCredentialProvider_FWD_DEFINED__
208#ifdef __cplusplus
209typedef class GenericCredentialProvider GenericCredentialProvider;
210#else
211typedef struct GenericCredentialProvider GenericCredentialProvider;
212#endif /* defined __cplusplus */
213#endif /* defined __GenericCredentialProvider_FWD_DEFINED__ */
214
215#ifndef __RASProvider_FWD_DEFINED__
216#define __RASProvider_FWD_DEFINED__
217#ifdef __cplusplus
218typedef class RASProvider RASProvider;
219#else
220typedef struct RASProvider RASProvider;
221#endif /* defined __cplusplus */
222#endif /* defined __RASProvider_FWD_DEFINED__ */
223
224#ifndef __OnexCredentialProvider_FWD_DEFINED__
225#define __OnexCredentialProvider_FWD_DEFINED__
226#ifdef __cplusplus
227typedef class OnexCredentialProvider OnexCredentialProvider;
228#else
229typedef struct OnexCredentialProvider OnexCredentialProvider;
230#endif /* defined __cplusplus */
231#endif /* defined __OnexCredentialProvider_FWD_DEFINED__ */
232
233#ifndef __OnexPlapSmartcardCredentialProvider_FWD_DEFINED__
234#define __OnexPlapSmartcardCredentialProvider_FWD_DEFINED__
235#ifdef __cplusplus
236typedef class OnexPlapSmartcardCredentialProvider OnexPlapSmartcardCredentialProvider;
237#else
238typedef struct OnexPlapSmartcardCredentialProvider OnexPlapSmartcardCredentialProvider;
239#endif /* defined __cplusplus */
240#endif /* defined __OnexPlapSmartcardCredentialProvider_FWD_DEFINED__ */
241
242#ifndef __VaultProvider_FWD_DEFINED__
243#define __VaultProvider_FWD_DEFINED__
244#ifdef __cplusplus
245typedef class VaultProvider VaultProvider;
246#else
247typedef struct VaultProvider VaultProvider;
248#endif /* defined __cplusplus */
249#endif /* defined __VaultProvider_FWD_DEFINED__ */
250
251#ifndef __WinBioCredentialProvider_FWD_DEFINED__
252#define __WinBioCredentialProvider_FWD_DEFINED__
253#ifdef __cplusplus
254typedef class WinBioCredentialProvider WinBioCredentialProvider;
255#else
256typedef struct WinBioCredentialProvider WinBioCredentialProvider;
257#endif /* defined __cplusplus */
258#endif /* defined __WinBioCredentialProvider_FWD_DEFINED__ */
259
260#ifndef __V1WinBioCredentialProvider_FWD_DEFINED__
261#define __V1WinBioCredentialProvider_FWD_DEFINED__
262#ifdef __cplusplus
263typedef class V1WinBioCredentialProvider V1WinBioCredentialProvider;
264#else
265typedef struct V1WinBioCredentialProvider V1WinBioCredentialProvider;
266#endif /* defined __cplusplus */
267#endif /* defined __V1WinBioCredentialProvider_FWD_DEFINED__ */
268
269/* Headers for imported files */
270
271#include <wtypes.h>
272#include <shobjidl.h>
273#include <propsys.h>
274#include <unknwn.h>
275
276#ifdef __cplusplus
277extern "C" {
278#endif
279
280#include <winapifamily.h>
281#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
282typedef enum _CREDENTIAL_PROVIDER_USAGE_SCENARIO {
283 CPUS_INVALID = 0,
284 CPUS_LOGON = 1,
285 CPUS_UNLOCK_WORKSTATION = 2,
286 CPUS_CHANGE_PASSWORD = 3,
287 CPUS_CREDUI = 4,
288 CPUS_PLAP = 5
289} CREDENTIAL_PROVIDER_USAGE_SCENARIO;
290typedef enum _CREDENTIAL_PROVIDER_FIELD_TYPE {
291 CPFT_INVALID = 0,
292 CPFT_LARGE_TEXT = 1,
293 CPFT_SMALL_TEXT = 2,
294 CPFT_COMMAND_LINK = 3,
295 CPFT_EDIT_TEXT = 4,
296 CPFT_PASSWORD_TEXT = 5,
297 CPFT_TILE_IMAGE = 6,
298 CPFT_CHECKBOX = 7,
299 CPFT_COMBOBOX = 8,
300 CPFT_SUBMIT_BUTTON = 9
301} CREDENTIAL_PROVIDER_FIELD_TYPE;
302typedef enum _CREDENTIAL_PROVIDER_FIELD_STATE {
303 CPFS_HIDDEN = 0,
304 CPFS_DISPLAY_IN_SELECTED_TILE = 1,
305 CPFS_DISPLAY_IN_DESELECTED_TILE = 2,
306 CPFS_DISPLAY_IN_BOTH = 3
307} CREDENTIAL_PROVIDER_FIELD_STATE;
308typedef enum _CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE {
309 CPFIS_NONE = 0,
310 CPFIS_READONLY = 1,
311 CPFIS_DISABLED = 2,
312 CPFIS_FOCUSED = 3
313} CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE;
314typedef struct _CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR {
315 DWORD dwFieldID;
316 CREDENTIAL_PROVIDER_FIELD_TYPE cpft;
317 LPWSTR pszLabel;
318 GUID guidFieldType;
319} CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR;
320typedef enum _CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE {
321 CPGSR_NO_CREDENTIAL_NOT_FINISHED = 0,
322 CPGSR_NO_CREDENTIAL_FINISHED = 1,
323 CPGSR_RETURN_CREDENTIAL_FINISHED = 2,
324 CPGSR_RETURN_NO_CREDENTIAL_FINISHED = 3
325} CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE;
326typedef enum _CREDENTIAL_PROVIDER_STATUS_ICON {
327 CPSI_NONE = 0,
328 CPSI_ERROR = 1,
329 CPSI_WARNING = 2,
330 CPSI_SUCCESS = 3
331} CREDENTIAL_PROVIDER_STATUS_ICON;
332typedef struct _CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION {
333 ULONG ulAuthenticationPackage;
334 GUID clsidCredentialProvider;
335 ULONG cbSerialization;
336 byte *rgbSerialization;
337} CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION;
338#if (NTDDI_VERSION >= NTDDI_WIN8)
339typedef enum CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS {
340 CPAO_NONE = 0x0,
341 CPAO_EMPTY_LOCAL = 0x1,
342 CPAO_EMPTY_CONNECTED = 0x2
343} CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS;
344DEFINE_ENUM_FLAG_OPERATORS(CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS)
345typedef enum CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS {
346 CPCFO_NONE = 0x0,
347 CPCFO_ENABLE_PASSWORD_REVEAL = 0x1,
348 CPCFO_IS_EMAIL_ADDRESS = 0x2,
349 CPCFO_ENABLE_TOUCH_KEYBOARD_AUTO_INVOKE = 0x4,
350 CPCFO_NUMBERS_ONLY = 0x8,
351 CPCFO_SHOW_ENGLISH_KEYBOARD = 0x10
352} CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS;
353DEFINE_ENUM_FLAG_OPERATORS(CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS)
354#endif /* (NTDDI_VERSION >= NTDDI_WIN8) */
355#ifdef __WIDL__
356typedef LONG NTSTATUS;
357#else
358#ifndef NTSTATUS
359typedef LONG NTSTATUS;
360#endif
361#endif
362#define CREDENTIAL_PROVIDER_NO_DEFAULT ((DWORD)-1)
363#ifndef __ICredentialProviderCredentialEvents_FWD_DEFINED__
364#define __ICredentialProviderCredentialEvents_FWD_DEFINED__
365typedef interface ICredentialProviderCredentialEvents ICredentialProviderCredentialEvents;
366#ifdef __cplusplus
367interface ICredentialProviderCredentialEvents;
368#endif /* __cplusplus */
369#endif
370
371/*****************************************************************************
372 * ICredentialProviderCredential interface
373 */
374#ifndef __ICredentialProviderCredential_INTERFACE_DEFINED__
375#define __ICredentialProviderCredential_INTERFACE_DEFINED__
376
377DEFINE_GUID(IID_ICredentialProviderCredential, 0x63913a93, 0x40c1, 0x481a, 0x81,0x8d, 0x40,0x72,0xff,0x8c,0x70,0xcc);
378#if defined(__cplusplus) && !defined(CINTERFACE)
379MIDL_INTERFACE("63913a93-40c1-481a-818d-4072ff8c70cc")
380ICredentialProviderCredential : public IUnknown
381{
382 virtual HRESULT STDMETHODCALLTYPE Advise(
383 ICredentialProviderCredentialEvents *pcpce) = 0;
384
385 virtual HRESULT STDMETHODCALLTYPE UnAdvise(
386 ) = 0;
387
388 virtual HRESULT STDMETHODCALLTYPE SetSelected(
389 WINBOOL *pbAutoLogon) = 0;
390
391 virtual HRESULT STDMETHODCALLTYPE SetDeselected(
392 ) = 0;
393
394 virtual HRESULT STDMETHODCALLTYPE GetFieldState(
395 DWORD dwFieldID,
396 CREDENTIAL_PROVIDER_FIELD_STATE *pcpfs,
397 CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE *pcpfis) = 0;
398
399 virtual HRESULT STDMETHODCALLTYPE GetStringValue(
400 DWORD dwFieldID,
401 LPWSTR *ppsz) = 0;
402
403 virtual HRESULT STDMETHODCALLTYPE GetBitmapValue(
404 DWORD dwFieldID,
405 HBITMAP *phbmp) = 0;
406
407 virtual HRESULT STDMETHODCALLTYPE GetCheckboxValue(
408 DWORD dwFieldID,
409 WINBOOL *pbChecked,
410 LPWSTR *ppszLabel) = 0;
411
412 virtual HRESULT STDMETHODCALLTYPE GetSubmitButtonValue(
413 DWORD dwFieldID,
414 DWORD *pdwAdjacentTo) = 0;
415
416 virtual HRESULT STDMETHODCALLTYPE GetComboBoxValueCount(
417 DWORD dwFieldID,
418 DWORD *pcItems,
419 DWORD *pdwSelectedItem) = 0;
420
421 virtual HRESULT STDMETHODCALLTYPE GetComboBoxValueAt(
422 DWORD dwFieldID,
423 DWORD dwItem,
424 LPWSTR *ppszItem) = 0;
425
426 virtual HRESULT STDMETHODCALLTYPE SetStringValue(
427 DWORD dwFieldID,
428 LPCWSTR psz) = 0;
429
430 virtual HRESULT STDMETHODCALLTYPE SetCheckboxValue(
431 DWORD dwFieldID,
432 WINBOOL bChecked) = 0;
433
434 virtual HRESULT STDMETHODCALLTYPE SetComboBoxSelectedValue(
435 DWORD dwFieldID,
436 DWORD dwSelectedItem) = 0;
437
438 virtual HRESULT STDMETHODCALLTYPE CommandLinkClicked(
439 DWORD dwFieldID) = 0;
440
441 virtual HRESULT STDMETHODCALLTYPE GetSerialization(
442 CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE *pcpgsr,
443 CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcs,
444 LPWSTR *ppszOptionalStatusText,
445 CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon) = 0;
446
447 virtual HRESULT STDMETHODCALLTYPE ReportResult(
448 NTSTATUS ntsStatus,
449 NTSTATUS ntsSubstatus,
450 LPWSTR *ppszOptionalStatusText,
451 CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon) = 0;
452
453};
454#ifdef __CRT_UUID_DECL
455__CRT_UUID_DECL(ICredentialProviderCredential, 0x63913a93, 0x40c1, 0x481a, 0x81,0x8d, 0x40,0x72,0xff,0x8c,0x70,0xcc)
456#endif
457#else
458typedef struct ICredentialProviderCredentialVtbl {
459 BEGIN_INTERFACE
460
461 /*** IUnknown methods ***/
462 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
463 ICredentialProviderCredential *This,
464 REFIID riid,
465 void **ppvObject);
466
467 ULONG (STDMETHODCALLTYPE *AddRef)(
468 ICredentialProviderCredential *This);
469
470 ULONG (STDMETHODCALLTYPE *Release)(
471 ICredentialProviderCredential *This);
472
473 /*** ICredentialProviderCredential methods ***/
474 HRESULT (STDMETHODCALLTYPE *Advise)(
475 ICredentialProviderCredential *This,
476 ICredentialProviderCredentialEvents *pcpce);
477
478 HRESULT (STDMETHODCALLTYPE *UnAdvise)(
479 ICredentialProviderCredential *This);
480
481 HRESULT (STDMETHODCALLTYPE *SetSelected)(
482 ICredentialProviderCredential *This,
483 WINBOOL *pbAutoLogon);
484
485 HRESULT (STDMETHODCALLTYPE *SetDeselected)(
486 ICredentialProviderCredential *This);
487
488 HRESULT (STDMETHODCALLTYPE *GetFieldState)(
489 ICredentialProviderCredential *This,
490 DWORD dwFieldID,
491 CREDENTIAL_PROVIDER_FIELD_STATE *pcpfs,
492 CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE *pcpfis);
493
494 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
495 ICredentialProviderCredential *This,
496 DWORD dwFieldID,
497 LPWSTR *ppsz);
498
499 HRESULT (STDMETHODCALLTYPE *GetBitmapValue)(
500 ICredentialProviderCredential *This,
501 DWORD dwFieldID,
502 HBITMAP *phbmp);
503
504 HRESULT (STDMETHODCALLTYPE *GetCheckboxValue)(
505 ICredentialProviderCredential *This,
506 DWORD dwFieldID,
507 WINBOOL *pbChecked,
508 LPWSTR *ppszLabel);
509
510 HRESULT (STDMETHODCALLTYPE *GetSubmitButtonValue)(
511 ICredentialProviderCredential *This,
512 DWORD dwFieldID,
513 DWORD *pdwAdjacentTo);
514
515 HRESULT (STDMETHODCALLTYPE *GetComboBoxValueCount)(
516 ICredentialProviderCredential *This,
517 DWORD dwFieldID,
518 DWORD *pcItems,
519 DWORD *pdwSelectedItem);
520
521 HRESULT (STDMETHODCALLTYPE *GetComboBoxValueAt)(
522 ICredentialProviderCredential *This,
523 DWORD dwFieldID,
524 DWORD dwItem,
525 LPWSTR *ppszItem);
526
527 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
528 ICredentialProviderCredential *This,
529 DWORD dwFieldID,
530 LPCWSTR psz);
531
532 HRESULT (STDMETHODCALLTYPE *SetCheckboxValue)(
533 ICredentialProviderCredential *This,
534 DWORD dwFieldID,
535 WINBOOL bChecked);
536
537 HRESULT (STDMETHODCALLTYPE *SetComboBoxSelectedValue)(
538 ICredentialProviderCredential *This,
539 DWORD dwFieldID,
540 DWORD dwSelectedItem);
541
542 HRESULT (STDMETHODCALLTYPE *CommandLinkClicked)(
543 ICredentialProviderCredential *This,
544 DWORD dwFieldID);
545
546 HRESULT (STDMETHODCALLTYPE *GetSerialization)(
547 ICredentialProviderCredential *This,
548 CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE *pcpgsr,
549 CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcs,
550 LPWSTR *ppszOptionalStatusText,
551 CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon);
552
553 HRESULT (STDMETHODCALLTYPE *ReportResult)(
554 ICredentialProviderCredential *This,
555 NTSTATUS ntsStatus,
556 NTSTATUS ntsSubstatus,
557 LPWSTR *ppszOptionalStatusText,
558 CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon);
559
560 END_INTERFACE
561} ICredentialProviderCredentialVtbl;
562
563interface ICredentialProviderCredential {
564 CONST_VTBL ICredentialProviderCredentialVtbl* lpVtbl;
565};
566
567#ifdef COBJMACROS
568#ifndef WIDL_C_INLINE_WRAPPERS
569/*** IUnknown methods ***/
570#define ICredentialProviderCredential_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
571#define ICredentialProviderCredential_AddRef(This) (This)->lpVtbl->AddRef(This)
572#define ICredentialProviderCredential_Release(This) (This)->lpVtbl->Release(This)
573/*** ICredentialProviderCredential methods ***/
574#define ICredentialProviderCredential_Advise(This,pcpce) (This)->lpVtbl->Advise(This,pcpce)
575#define ICredentialProviderCredential_UnAdvise(This) (This)->lpVtbl->UnAdvise(This)
576#define ICredentialProviderCredential_SetSelected(This,pbAutoLogon) (This)->lpVtbl->SetSelected(This,pbAutoLogon)
577#define ICredentialProviderCredential_SetDeselected(This) (This)->lpVtbl->SetDeselected(This)
578#define ICredentialProviderCredential_GetFieldState(This,dwFieldID,pcpfs,pcpfis) (This)->lpVtbl->GetFieldState(This,dwFieldID,pcpfs,pcpfis)
579#define ICredentialProviderCredential_GetStringValue(This,dwFieldID,ppsz) (This)->lpVtbl->GetStringValue(This,dwFieldID,ppsz)
580#define ICredentialProviderCredential_GetBitmapValue(This,dwFieldID,phbmp) (This)->lpVtbl->GetBitmapValue(This,dwFieldID,phbmp)
581#define ICredentialProviderCredential_GetCheckboxValue(This,dwFieldID,pbChecked,ppszLabel) (This)->lpVtbl->GetCheckboxValue(This,dwFieldID,pbChecked,ppszLabel)
582#define ICredentialProviderCredential_GetSubmitButtonValue(This,dwFieldID,pdwAdjacentTo) (This)->lpVtbl->GetSubmitButtonValue(This,dwFieldID,pdwAdjacentTo)
583#define ICredentialProviderCredential_GetComboBoxValueCount(This,dwFieldID,pcItems,pdwSelectedItem) (This)->lpVtbl->GetComboBoxValueCount(This,dwFieldID,pcItems,pdwSelectedItem)
584#define ICredentialProviderCredential_GetComboBoxValueAt(This,dwFieldID,dwItem,ppszItem) (This)->lpVtbl->GetComboBoxValueAt(This,dwFieldID,dwItem,ppszItem)
585#define ICredentialProviderCredential_SetStringValue(This,dwFieldID,psz) (This)->lpVtbl->SetStringValue(This,dwFieldID,psz)
586#define ICredentialProviderCredential_SetCheckboxValue(This,dwFieldID,bChecked) (This)->lpVtbl->SetCheckboxValue(This,dwFieldID,bChecked)
587#define ICredentialProviderCredential_SetComboBoxSelectedValue(This,dwFieldID,dwSelectedItem) (This)->lpVtbl->SetComboBoxSelectedValue(This,dwFieldID,dwSelectedItem)
588#define ICredentialProviderCredential_CommandLinkClicked(This,dwFieldID) (This)->lpVtbl->CommandLinkClicked(This,dwFieldID)
589#define ICredentialProviderCredential_GetSerialization(This,pcpgsr,pcpcs,ppszOptionalStatusText,pcpsiOptionalStatusIcon) (This)->lpVtbl->GetSerialization(This,pcpgsr,pcpcs,ppszOptionalStatusText,pcpsiOptionalStatusIcon)
590#define ICredentialProviderCredential_ReportResult(This,ntsStatus,ntsSubstatus,ppszOptionalStatusText,pcpsiOptionalStatusIcon) (This)->lpVtbl->ReportResult(This,ntsStatus,ntsSubstatus,ppszOptionalStatusText,pcpsiOptionalStatusIcon)
591#else
592/*** IUnknown methods ***/
593static inline HRESULT ICredentialProviderCredential_QueryInterface(ICredentialProviderCredential* This,REFIID riid,void **ppvObject) {
594 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
595}
596static inline ULONG ICredentialProviderCredential_AddRef(ICredentialProviderCredential* This) {
597 return This->lpVtbl->AddRef(This);
598}
599static inline ULONG ICredentialProviderCredential_Release(ICredentialProviderCredential* This) {
600 return This->lpVtbl->Release(This);
601}
602/*** ICredentialProviderCredential methods ***/
603static inline HRESULT ICredentialProviderCredential_Advise(ICredentialProviderCredential* This,ICredentialProviderCredentialEvents *pcpce) {
604 return This->lpVtbl->Advise(This,pcpce);
605}
606static inline HRESULT ICredentialProviderCredential_UnAdvise(ICredentialProviderCredential* This) {
607 return This->lpVtbl->UnAdvise(This);
608}
609static inline HRESULT ICredentialProviderCredential_SetSelected(ICredentialProviderCredential* This,WINBOOL *pbAutoLogon) {
610 return This->lpVtbl->SetSelected(This,pbAutoLogon);
611}
612static inline HRESULT ICredentialProviderCredential_SetDeselected(ICredentialProviderCredential* This) {
613 return This->lpVtbl->SetDeselected(This);
614}
615static inline HRESULT ICredentialProviderCredential_GetFieldState(ICredentialProviderCredential* This,DWORD dwFieldID,CREDENTIAL_PROVIDER_FIELD_STATE *pcpfs,CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE *pcpfis) {
616 return This->lpVtbl->GetFieldState(This,dwFieldID,pcpfs,pcpfis);
617}
618static inline HRESULT ICredentialProviderCredential_GetStringValue(ICredentialProviderCredential* This,DWORD dwFieldID,LPWSTR *ppsz) {
619 return This->lpVtbl->GetStringValue(This,dwFieldID,ppsz);
620}
621static inline HRESULT ICredentialProviderCredential_GetBitmapValue(ICredentialProviderCredential* This,DWORD dwFieldID,HBITMAP *phbmp) {
622 return This->lpVtbl->GetBitmapValue(This,dwFieldID,phbmp);
623}
624static inline HRESULT ICredentialProviderCredential_GetCheckboxValue(ICredentialProviderCredential* This,DWORD dwFieldID,WINBOOL *pbChecked,LPWSTR *ppszLabel) {
625 return This->lpVtbl->GetCheckboxValue(This,dwFieldID,pbChecked,ppszLabel);
626}
627static inline HRESULT ICredentialProviderCredential_GetSubmitButtonValue(ICredentialProviderCredential* This,DWORD dwFieldID,DWORD *pdwAdjacentTo) {
628 return This->lpVtbl->GetSubmitButtonValue(This,dwFieldID,pdwAdjacentTo);
629}
630static inline HRESULT ICredentialProviderCredential_GetComboBoxValueCount(ICredentialProviderCredential* This,DWORD dwFieldID,DWORD *pcItems,DWORD *pdwSelectedItem) {
631 return This->lpVtbl->GetComboBoxValueCount(This,dwFieldID,pcItems,pdwSelectedItem);
632}
633static inline HRESULT ICredentialProviderCredential_GetComboBoxValueAt(ICredentialProviderCredential* This,DWORD dwFieldID,DWORD dwItem,LPWSTR *ppszItem) {
634 return This->lpVtbl->GetComboBoxValueAt(This,dwFieldID,dwItem,ppszItem);
635}
636static inline HRESULT ICredentialProviderCredential_SetStringValue(ICredentialProviderCredential* This,DWORD dwFieldID,LPCWSTR psz) {
637 return This->lpVtbl->SetStringValue(This,dwFieldID,psz);
638}
639static inline HRESULT ICredentialProviderCredential_SetCheckboxValue(ICredentialProviderCredential* This,DWORD dwFieldID,WINBOOL bChecked) {
640 return This->lpVtbl->SetCheckboxValue(This,dwFieldID,bChecked);
641}
642static inline HRESULT ICredentialProviderCredential_SetComboBoxSelectedValue(ICredentialProviderCredential* This,DWORD dwFieldID,DWORD dwSelectedItem) {
643 return This->lpVtbl->SetComboBoxSelectedValue(This,dwFieldID,dwSelectedItem);
644}
645static inline HRESULT ICredentialProviderCredential_CommandLinkClicked(ICredentialProviderCredential* This,DWORD dwFieldID) {
646 return This->lpVtbl->CommandLinkClicked(This,dwFieldID);
647}
648static inline HRESULT ICredentialProviderCredential_GetSerialization(ICredentialProviderCredential* This,CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE *pcpgsr,CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcs,LPWSTR *ppszOptionalStatusText,CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon) {
649 return This->lpVtbl->GetSerialization(This,pcpgsr,pcpcs,ppszOptionalStatusText,pcpsiOptionalStatusIcon);
650}
651static inline HRESULT ICredentialProviderCredential_ReportResult(ICredentialProviderCredential* This,NTSTATUS ntsStatus,NTSTATUS ntsSubstatus,LPWSTR *ppszOptionalStatusText,CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon) {
652 return This->lpVtbl->ReportResult(This,ntsStatus,ntsSubstatus,ppszOptionalStatusText,pcpsiOptionalStatusIcon);
653}
654#endif
655#endif
656
657#endif
658
659
660#endif /* __ICredentialProviderCredential_INTERFACE_DEFINED__ */
661
662/*****************************************************************************
663 * IQueryContinueWithStatus interface
664 */
665#ifndef __IQueryContinueWithStatus_INTERFACE_DEFINED__
666#define __IQueryContinueWithStatus_INTERFACE_DEFINED__
667
668DEFINE_GUID(IID_IQueryContinueWithStatus, 0x9090be5b, 0x502b, 0x41fb, 0xbc,0xcc, 0x00,0x49,0xa6,0xc7,0x25,0x4b);
669#if defined(__cplusplus) && !defined(CINTERFACE)
670MIDL_INTERFACE("9090be5b-502b-41fb-bccc-0049a6c7254b")
671IQueryContinueWithStatus : public IQueryContinue
672{
673 virtual HRESULT STDMETHODCALLTYPE SetStatusMessage(
674 LPCWSTR psz) = 0;
675
676};
677#ifdef __CRT_UUID_DECL
678__CRT_UUID_DECL(IQueryContinueWithStatus, 0x9090be5b, 0x502b, 0x41fb, 0xbc,0xcc, 0x00,0x49,0xa6,0xc7,0x25,0x4b)
679#endif
680#else
681typedef struct IQueryContinueWithStatusVtbl {
682 BEGIN_INTERFACE
683
684 /*** IUnknown methods ***/
685 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
686 IQueryContinueWithStatus *This,
687 REFIID riid,
688 void **ppvObject);
689
690 ULONG (STDMETHODCALLTYPE *AddRef)(
691 IQueryContinueWithStatus *This);
692
693 ULONG (STDMETHODCALLTYPE *Release)(
694 IQueryContinueWithStatus *This);
695
696 /*** IQueryContinue methods ***/
697 HRESULT (STDMETHODCALLTYPE *QueryContinue)(
698 IQueryContinueWithStatus *This);
699
700 /*** IQueryContinueWithStatus methods ***/
701 HRESULT (STDMETHODCALLTYPE *SetStatusMessage)(
702 IQueryContinueWithStatus *This,
703 LPCWSTR psz);
704
705 END_INTERFACE
706} IQueryContinueWithStatusVtbl;
707
708interface IQueryContinueWithStatus {
709 CONST_VTBL IQueryContinueWithStatusVtbl* lpVtbl;
710};
711
712#ifdef COBJMACROS
713#ifndef WIDL_C_INLINE_WRAPPERS
714/*** IUnknown methods ***/
715#define IQueryContinueWithStatus_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
716#define IQueryContinueWithStatus_AddRef(This) (This)->lpVtbl->AddRef(This)
717#define IQueryContinueWithStatus_Release(This) (This)->lpVtbl->Release(This)
718/*** IQueryContinue methods ***/
719#define IQueryContinueWithStatus_QueryContinue(This) (This)->lpVtbl->QueryContinue(This)
720/*** IQueryContinueWithStatus methods ***/
721#define IQueryContinueWithStatus_SetStatusMessage(This,psz) (This)->lpVtbl->SetStatusMessage(This,psz)
722#else
723/*** IUnknown methods ***/
724static inline HRESULT IQueryContinueWithStatus_QueryInterface(IQueryContinueWithStatus* This,REFIID riid,void **ppvObject) {
725 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
726}
727static inline ULONG IQueryContinueWithStatus_AddRef(IQueryContinueWithStatus* This) {
728 return This->lpVtbl->AddRef(This);
729}
730static inline ULONG IQueryContinueWithStatus_Release(IQueryContinueWithStatus* This) {
731 return This->lpVtbl->Release(This);
732}
733/*** IQueryContinue methods ***/
734static inline HRESULT IQueryContinueWithStatus_QueryContinue(IQueryContinueWithStatus* This) {
735 return This->lpVtbl->QueryContinue(This);
736}
737/*** IQueryContinueWithStatus methods ***/
738static inline HRESULT IQueryContinueWithStatus_SetStatusMessage(IQueryContinueWithStatus* This,LPCWSTR psz) {
739 return This->lpVtbl->SetStatusMessage(This,psz);
740}
741#endif
742#endif
743
744#endif
745
746
747#endif /* __IQueryContinueWithStatus_INTERFACE_DEFINED__ */
748
749/*****************************************************************************
750 * IConnectableCredentialProviderCredential interface
751 */
752#ifndef __IConnectableCredentialProviderCredential_INTERFACE_DEFINED__
753#define __IConnectableCredentialProviderCredential_INTERFACE_DEFINED__
754
755DEFINE_GUID(IID_IConnectableCredentialProviderCredential, 0x9387928b, 0xac75, 0x4bf9, 0x8a,0xb2, 0x2b,0x93,0xc4,0xa5,0x52,0x90);
756#if defined(__cplusplus) && !defined(CINTERFACE)
757MIDL_INTERFACE("9387928b-ac75-4bf9-8ab2-2b93c4a55290")
758IConnectableCredentialProviderCredential : public ICredentialProviderCredential
759{
760 virtual HRESULT STDMETHODCALLTYPE Connect(
761 IQueryContinueWithStatus *pqcws) = 0;
762
763 virtual HRESULT STDMETHODCALLTYPE Disconnect(
764 ) = 0;
765
766};
767#ifdef __CRT_UUID_DECL
768__CRT_UUID_DECL(IConnectableCredentialProviderCredential, 0x9387928b, 0xac75, 0x4bf9, 0x8a,0xb2, 0x2b,0x93,0xc4,0xa5,0x52,0x90)
769#endif
770#else
771typedef struct IConnectableCredentialProviderCredentialVtbl {
772 BEGIN_INTERFACE
773
774 /*** IUnknown methods ***/
775 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
776 IConnectableCredentialProviderCredential *This,
777 REFIID riid,
778 void **ppvObject);
779
780 ULONG (STDMETHODCALLTYPE *AddRef)(
781 IConnectableCredentialProviderCredential *This);
782
783 ULONG (STDMETHODCALLTYPE *Release)(
784 IConnectableCredentialProviderCredential *This);
785
786 /*** ICredentialProviderCredential methods ***/
787 HRESULT (STDMETHODCALLTYPE *Advise)(
788 IConnectableCredentialProviderCredential *This,
789 ICredentialProviderCredentialEvents *pcpce);
790
791 HRESULT (STDMETHODCALLTYPE *UnAdvise)(
792 IConnectableCredentialProviderCredential *This);
793
794 HRESULT (STDMETHODCALLTYPE *SetSelected)(
795 IConnectableCredentialProviderCredential *This,
796 WINBOOL *pbAutoLogon);
797
798 HRESULT (STDMETHODCALLTYPE *SetDeselected)(
799 IConnectableCredentialProviderCredential *This);
800
801 HRESULT (STDMETHODCALLTYPE *GetFieldState)(
802 IConnectableCredentialProviderCredential *This,
803 DWORD dwFieldID,
804 CREDENTIAL_PROVIDER_FIELD_STATE *pcpfs,
805 CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE *pcpfis);
806
807 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
808 IConnectableCredentialProviderCredential *This,
809 DWORD dwFieldID,
810 LPWSTR *ppsz);
811
812 HRESULT (STDMETHODCALLTYPE *GetBitmapValue)(
813 IConnectableCredentialProviderCredential *This,
814 DWORD dwFieldID,
815 HBITMAP *phbmp);
816
817 HRESULT (STDMETHODCALLTYPE *GetCheckboxValue)(
818 IConnectableCredentialProviderCredential *This,
819 DWORD dwFieldID,
820 WINBOOL *pbChecked,
821 LPWSTR *ppszLabel);
822
823 HRESULT (STDMETHODCALLTYPE *GetSubmitButtonValue)(
824 IConnectableCredentialProviderCredential *This,
825 DWORD dwFieldID,
826 DWORD *pdwAdjacentTo);
827
828 HRESULT (STDMETHODCALLTYPE *GetComboBoxValueCount)(
829 IConnectableCredentialProviderCredential *This,
830 DWORD dwFieldID,
831 DWORD *pcItems,
832 DWORD *pdwSelectedItem);
833
834 HRESULT (STDMETHODCALLTYPE *GetComboBoxValueAt)(
835 IConnectableCredentialProviderCredential *This,
836 DWORD dwFieldID,
837 DWORD dwItem,
838 LPWSTR *ppszItem);
839
840 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
841 IConnectableCredentialProviderCredential *This,
842 DWORD dwFieldID,
843 LPCWSTR psz);
844
845 HRESULT (STDMETHODCALLTYPE *SetCheckboxValue)(
846 IConnectableCredentialProviderCredential *This,
847 DWORD dwFieldID,
848 WINBOOL bChecked);
849
850 HRESULT (STDMETHODCALLTYPE *SetComboBoxSelectedValue)(
851 IConnectableCredentialProviderCredential *This,
852 DWORD dwFieldID,
853 DWORD dwSelectedItem);
854
855 HRESULT (STDMETHODCALLTYPE *CommandLinkClicked)(
856 IConnectableCredentialProviderCredential *This,
857 DWORD dwFieldID);
858
859 HRESULT (STDMETHODCALLTYPE *GetSerialization)(
860 IConnectableCredentialProviderCredential *This,
861 CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE *pcpgsr,
862 CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcs,
863 LPWSTR *ppszOptionalStatusText,
864 CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon);
865
866 HRESULT (STDMETHODCALLTYPE *ReportResult)(
867 IConnectableCredentialProviderCredential *This,
868 NTSTATUS ntsStatus,
869 NTSTATUS ntsSubstatus,
870 LPWSTR *ppszOptionalStatusText,
871 CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon);
872
873 /*** IConnectableCredentialProviderCredential methods ***/
874 HRESULT (STDMETHODCALLTYPE *Connect)(
875 IConnectableCredentialProviderCredential *This,
876 IQueryContinueWithStatus *pqcws);
877
878 HRESULT (STDMETHODCALLTYPE *Disconnect)(
879 IConnectableCredentialProviderCredential *This);
880
881 END_INTERFACE
882} IConnectableCredentialProviderCredentialVtbl;
883
884interface IConnectableCredentialProviderCredential {
885 CONST_VTBL IConnectableCredentialProviderCredentialVtbl* lpVtbl;
886};
887
888#ifdef COBJMACROS
889#ifndef WIDL_C_INLINE_WRAPPERS
890/*** IUnknown methods ***/
891#define IConnectableCredentialProviderCredential_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
892#define IConnectableCredentialProviderCredential_AddRef(This) (This)->lpVtbl->AddRef(This)
893#define IConnectableCredentialProviderCredential_Release(This) (This)->lpVtbl->Release(This)
894/*** ICredentialProviderCredential methods ***/
895#define IConnectableCredentialProviderCredential_Advise(This,pcpce) (This)->lpVtbl->Advise(This,pcpce)
896#define IConnectableCredentialProviderCredential_UnAdvise(This) (This)->lpVtbl->UnAdvise(This)
897#define IConnectableCredentialProviderCredential_SetSelected(This,pbAutoLogon) (This)->lpVtbl->SetSelected(This,pbAutoLogon)
898#define IConnectableCredentialProviderCredential_SetDeselected(This) (This)->lpVtbl->SetDeselected(This)
899#define IConnectableCredentialProviderCredential_GetFieldState(This,dwFieldID,pcpfs,pcpfis) (This)->lpVtbl->GetFieldState(This,dwFieldID,pcpfs,pcpfis)
900#define IConnectableCredentialProviderCredential_GetStringValue(This,dwFieldID,ppsz) (This)->lpVtbl->GetStringValue(This,dwFieldID,ppsz)
901#define IConnectableCredentialProviderCredential_GetBitmapValue(This,dwFieldID,phbmp) (This)->lpVtbl->GetBitmapValue(This,dwFieldID,phbmp)
902#define IConnectableCredentialProviderCredential_GetCheckboxValue(This,dwFieldID,pbChecked,ppszLabel) (This)->lpVtbl->GetCheckboxValue(This,dwFieldID,pbChecked,ppszLabel)
903#define IConnectableCredentialProviderCredential_GetSubmitButtonValue(This,dwFieldID,pdwAdjacentTo) (This)->lpVtbl->GetSubmitButtonValue(This,dwFieldID,pdwAdjacentTo)
904#define IConnectableCredentialProviderCredential_GetComboBoxValueCount(This,dwFieldID,pcItems,pdwSelectedItem) (This)->lpVtbl->GetComboBoxValueCount(This,dwFieldID,pcItems,pdwSelectedItem)
905#define IConnectableCredentialProviderCredential_GetComboBoxValueAt(This,dwFieldID,dwItem,ppszItem) (This)->lpVtbl->GetComboBoxValueAt(This,dwFieldID,dwItem,ppszItem)
906#define IConnectableCredentialProviderCredential_SetStringValue(This,dwFieldID,psz) (This)->lpVtbl->SetStringValue(This,dwFieldID,psz)
907#define IConnectableCredentialProviderCredential_SetCheckboxValue(This,dwFieldID,bChecked) (This)->lpVtbl->SetCheckboxValue(This,dwFieldID,bChecked)
908#define IConnectableCredentialProviderCredential_SetComboBoxSelectedValue(This,dwFieldID,dwSelectedItem) (This)->lpVtbl->SetComboBoxSelectedValue(This,dwFieldID,dwSelectedItem)
909#define IConnectableCredentialProviderCredential_CommandLinkClicked(This,dwFieldID) (This)->lpVtbl->CommandLinkClicked(This,dwFieldID)
910#define IConnectableCredentialProviderCredential_GetSerialization(This,pcpgsr,pcpcs,ppszOptionalStatusText,pcpsiOptionalStatusIcon) (This)->lpVtbl->GetSerialization(This,pcpgsr,pcpcs,ppszOptionalStatusText,pcpsiOptionalStatusIcon)
911#define IConnectableCredentialProviderCredential_ReportResult(This,ntsStatus,ntsSubstatus,ppszOptionalStatusText,pcpsiOptionalStatusIcon) (This)->lpVtbl->ReportResult(This,ntsStatus,ntsSubstatus,ppszOptionalStatusText,pcpsiOptionalStatusIcon)
912/*** IConnectableCredentialProviderCredential methods ***/
913#define IConnectableCredentialProviderCredential_Connect(This,pqcws) (This)->lpVtbl->Connect(This,pqcws)
914#define IConnectableCredentialProviderCredential_Disconnect(This) (This)->lpVtbl->Disconnect(This)
915#else
916/*** IUnknown methods ***/
917static inline HRESULT IConnectableCredentialProviderCredential_QueryInterface(IConnectableCredentialProviderCredential* This,REFIID riid,void **ppvObject) {
918 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
919}
920static inline ULONG IConnectableCredentialProviderCredential_AddRef(IConnectableCredentialProviderCredential* This) {
921 return This->lpVtbl->AddRef(This);
922}
923static inline ULONG IConnectableCredentialProviderCredential_Release(IConnectableCredentialProviderCredential* This) {
924 return This->lpVtbl->Release(This);
925}
926/*** ICredentialProviderCredential methods ***/
927static inline HRESULT IConnectableCredentialProviderCredential_Advise(IConnectableCredentialProviderCredential* This,ICredentialProviderCredentialEvents *pcpce) {
928 return This->lpVtbl->Advise(This,pcpce);
929}
930static inline HRESULT IConnectableCredentialProviderCredential_UnAdvise(IConnectableCredentialProviderCredential* This) {
931 return This->lpVtbl->UnAdvise(This);
932}
933static inline HRESULT IConnectableCredentialProviderCredential_SetSelected(IConnectableCredentialProviderCredential* This,WINBOOL *pbAutoLogon) {
934 return This->lpVtbl->SetSelected(This,pbAutoLogon);
935}
936static inline HRESULT IConnectableCredentialProviderCredential_SetDeselected(IConnectableCredentialProviderCredential* This) {
937 return This->lpVtbl->SetDeselected(This);
938}
939static inline HRESULT IConnectableCredentialProviderCredential_GetFieldState(IConnectableCredentialProviderCredential* This,DWORD dwFieldID,CREDENTIAL_PROVIDER_FIELD_STATE *pcpfs,CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE *pcpfis) {
940 return This->lpVtbl->GetFieldState(This,dwFieldID,pcpfs,pcpfis);
941}
942static inline HRESULT IConnectableCredentialProviderCredential_GetStringValue(IConnectableCredentialProviderCredential* This,DWORD dwFieldID,LPWSTR *ppsz) {
943 return This->lpVtbl->GetStringValue(This,dwFieldID,ppsz);
944}
945static inline HRESULT IConnectableCredentialProviderCredential_GetBitmapValue(IConnectableCredentialProviderCredential* This,DWORD dwFieldID,HBITMAP *phbmp) {
946 return This->lpVtbl->GetBitmapValue(This,dwFieldID,phbmp);
947}
948static inline HRESULT IConnectableCredentialProviderCredential_GetCheckboxValue(IConnectableCredentialProviderCredential* This,DWORD dwFieldID,WINBOOL *pbChecked,LPWSTR *ppszLabel) {
949 return This->lpVtbl->GetCheckboxValue(This,dwFieldID,pbChecked,ppszLabel);
950}
951static inline HRESULT IConnectableCredentialProviderCredential_GetSubmitButtonValue(IConnectableCredentialProviderCredential* This,DWORD dwFieldID,DWORD *pdwAdjacentTo) {
952 return This->lpVtbl->GetSubmitButtonValue(This,dwFieldID,pdwAdjacentTo);
953}
954static inline HRESULT IConnectableCredentialProviderCredential_GetComboBoxValueCount(IConnectableCredentialProviderCredential* This,DWORD dwFieldID,DWORD *pcItems,DWORD *pdwSelectedItem) {
955 return This->lpVtbl->GetComboBoxValueCount(This,dwFieldID,pcItems,pdwSelectedItem);
956}
957static inline HRESULT IConnectableCredentialProviderCredential_GetComboBoxValueAt(IConnectableCredentialProviderCredential* This,DWORD dwFieldID,DWORD dwItem,LPWSTR *ppszItem) {
958 return This->lpVtbl->GetComboBoxValueAt(This,dwFieldID,dwItem,ppszItem);
959}
960static inline HRESULT IConnectableCredentialProviderCredential_SetStringValue(IConnectableCredentialProviderCredential* This,DWORD dwFieldID,LPCWSTR psz) {
961 return This->lpVtbl->SetStringValue(This,dwFieldID,psz);
962}
963static inline HRESULT IConnectableCredentialProviderCredential_SetCheckboxValue(IConnectableCredentialProviderCredential* This,DWORD dwFieldID,WINBOOL bChecked) {
964 return This->lpVtbl->SetCheckboxValue(This,dwFieldID,bChecked);
965}
966static inline HRESULT IConnectableCredentialProviderCredential_SetComboBoxSelectedValue(IConnectableCredentialProviderCredential* This,DWORD dwFieldID,DWORD dwSelectedItem) {
967 return This->lpVtbl->SetComboBoxSelectedValue(This,dwFieldID,dwSelectedItem);
968}
969static inline HRESULT IConnectableCredentialProviderCredential_CommandLinkClicked(IConnectableCredentialProviderCredential* This,DWORD dwFieldID) {
970 return This->lpVtbl->CommandLinkClicked(This,dwFieldID);
971}
972static inline HRESULT IConnectableCredentialProviderCredential_GetSerialization(IConnectableCredentialProviderCredential* This,CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE *pcpgsr,CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcs,LPWSTR *ppszOptionalStatusText,CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon) {
973 return This->lpVtbl->GetSerialization(This,pcpgsr,pcpcs,ppszOptionalStatusText,pcpsiOptionalStatusIcon);
974}
975static inline HRESULT IConnectableCredentialProviderCredential_ReportResult(IConnectableCredentialProviderCredential* This,NTSTATUS ntsStatus,NTSTATUS ntsSubstatus,LPWSTR *ppszOptionalStatusText,CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon) {
976 return This->lpVtbl->ReportResult(This,ntsStatus,ntsSubstatus,ppszOptionalStatusText,pcpsiOptionalStatusIcon);
977}
978/*** IConnectableCredentialProviderCredential methods ***/
979static inline HRESULT IConnectableCredentialProviderCredential_Connect(IConnectableCredentialProviderCredential* This,IQueryContinueWithStatus *pqcws) {
980 return This->lpVtbl->Connect(This,pqcws);
981}
982static inline HRESULT IConnectableCredentialProviderCredential_Disconnect(IConnectableCredentialProviderCredential* This) {
983 return This->lpVtbl->Disconnect(This);
984}
985#endif
986#endif
987
988#endif
989
990
991#endif /* __IConnectableCredentialProviderCredential_INTERFACE_DEFINED__ */
992
993/*****************************************************************************
994 * ICredentialProviderCredentialEvents interface
995 */
996#ifndef __ICredentialProviderCredentialEvents_INTERFACE_DEFINED__
997#define __ICredentialProviderCredentialEvents_INTERFACE_DEFINED__
998
999DEFINE_GUID(IID_ICredentialProviderCredentialEvents, 0xfa6fa76b, 0x66b7, 0x4b11, 0x95,0xf1, 0x86,0x17,0x11,0x18,0xe8,0x16);
1000#if defined(__cplusplus) && !defined(CINTERFACE)
1001MIDL_INTERFACE("fa6fa76b-66b7-4b11-95f1-86171118e816")
1002ICredentialProviderCredentialEvents : public IUnknown
1003{
1004 virtual HRESULT STDMETHODCALLTYPE SetFieldState(
1005 ICredentialProviderCredential *pcpc,
1006 DWORD dwFieldID,
1007 CREDENTIAL_PROVIDER_FIELD_STATE cpfs) = 0;
1008
1009 virtual HRESULT STDMETHODCALLTYPE SetFieldInteractiveState(
1010 ICredentialProviderCredential *pcpc,
1011 DWORD dwFieldID,
1012 CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE cpfis) = 0;
1013
1014 virtual HRESULT STDMETHODCALLTYPE SetFieldString(
1015 ICredentialProviderCredential *pcpc,
1016 DWORD dwFieldID,
1017 LPCWSTR psz) = 0;
1018
1019 virtual HRESULT STDMETHODCALLTYPE SetFieldCheckbox(
1020 ICredentialProviderCredential *pcpc,
1021 DWORD dwFieldID,
1022 WINBOOL bChecked,
1023 LPCWSTR pszLabel) = 0;
1024
1025 virtual HRESULT STDMETHODCALLTYPE SetFieldBitmap(
1026 ICredentialProviderCredential *pcpc,
1027 DWORD dwFieldID,
1028 HBITMAP hbmp) = 0;
1029
1030 virtual HRESULT STDMETHODCALLTYPE SetFieldComboBoxSelectedItem(
1031 ICredentialProviderCredential *pcpc,
1032 DWORD dwFieldID,
1033 DWORD dwSelectedItem) = 0;
1034
1035 virtual HRESULT STDMETHODCALLTYPE DeleteFieldComboBoxItem(
1036 ICredentialProviderCredential *pcpc,
1037 DWORD dwFieldID,
1038 DWORD dwItem) = 0;
1039
1040 virtual HRESULT STDMETHODCALLTYPE AppendFieldComboBoxItem(
1041 ICredentialProviderCredential *pcpc,
1042 DWORD dwFieldID,
1043 LPCWSTR pszItem) = 0;
1044
1045 virtual HRESULT STDMETHODCALLTYPE SetFieldSubmitButton(
1046 ICredentialProviderCredential *pcpc,
1047 DWORD dwFieldID,
1048 DWORD dwAdjacentTo) = 0;
1049
1050 virtual HRESULT STDMETHODCALLTYPE OnCreatingWindow(
1051 HWND *phwndOwner) = 0;
1052
1053};
1054#ifdef __CRT_UUID_DECL
1055__CRT_UUID_DECL(ICredentialProviderCredentialEvents, 0xfa6fa76b, 0x66b7, 0x4b11, 0x95,0xf1, 0x86,0x17,0x11,0x18,0xe8,0x16)
1056#endif
1057#else
1058typedef struct ICredentialProviderCredentialEventsVtbl {
1059 BEGIN_INTERFACE
1060
1061 /*** IUnknown methods ***/
1062 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1063 ICredentialProviderCredentialEvents *This,
1064 REFIID riid,
1065 void **ppvObject);
1066
1067 ULONG (STDMETHODCALLTYPE *AddRef)(
1068 ICredentialProviderCredentialEvents *This);
1069
1070 ULONG (STDMETHODCALLTYPE *Release)(
1071 ICredentialProviderCredentialEvents *This);
1072
1073 /*** ICredentialProviderCredentialEvents methods ***/
1074 HRESULT (STDMETHODCALLTYPE *SetFieldState)(
1075 ICredentialProviderCredentialEvents *This,
1076 ICredentialProviderCredential *pcpc,
1077 DWORD dwFieldID,
1078 CREDENTIAL_PROVIDER_FIELD_STATE cpfs);
1079
1080 HRESULT (STDMETHODCALLTYPE *SetFieldInteractiveState)(
1081 ICredentialProviderCredentialEvents *This,
1082 ICredentialProviderCredential *pcpc,
1083 DWORD dwFieldID,
1084 CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE cpfis);
1085
1086 HRESULT (STDMETHODCALLTYPE *SetFieldString)(
1087 ICredentialProviderCredentialEvents *This,
1088 ICredentialProviderCredential *pcpc,
1089 DWORD dwFieldID,
1090 LPCWSTR psz);
1091
1092 HRESULT (STDMETHODCALLTYPE *SetFieldCheckbox)(
1093 ICredentialProviderCredentialEvents *This,
1094 ICredentialProviderCredential *pcpc,
1095 DWORD dwFieldID,
1096 WINBOOL bChecked,
1097 LPCWSTR pszLabel);
1098
1099 HRESULT (STDMETHODCALLTYPE *SetFieldBitmap)(
1100 ICredentialProviderCredentialEvents *This,
1101 ICredentialProviderCredential *pcpc,
1102 DWORD dwFieldID,
1103 HBITMAP hbmp);
1104
1105 HRESULT (STDMETHODCALLTYPE *SetFieldComboBoxSelectedItem)(
1106 ICredentialProviderCredentialEvents *This,
1107 ICredentialProviderCredential *pcpc,
1108 DWORD dwFieldID,
1109 DWORD dwSelectedItem);
1110
1111 HRESULT (STDMETHODCALLTYPE *DeleteFieldComboBoxItem)(
1112 ICredentialProviderCredentialEvents *This,
1113 ICredentialProviderCredential *pcpc,
1114 DWORD dwFieldID,
1115 DWORD dwItem);
1116
1117 HRESULT (STDMETHODCALLTYPE *AppendFieldComboBoxItem)(
1118 ICredentialProviderCredentialEvents *This,
1119 ICredentialProviderCredential *pcpc,
1120 DWORD dwFieldID,
1121 LPCWSTR pszItem);
1122
1123 HRESULT (STDMETHODCALLTYPE *SetFieldSubmitButton)(
1124 ICredentialProviderCredentialEvents *This,
1125 ICredentialProviderCredential *pcpc,
1126 DWORD dwFieldID,
1127 DWORD dwAdjacentTo);
1128
1129 HRESULT (STDMETHODCALLTYPE *OnCreatingWindow)(
1130 ICredentialProviderCredentialEvents *This,
1131 HWND *phwndOwner);
1132
1133 END_INTERFACE
1134} ICredentialProviderCredentialEventsVtbl;
1135
1136interface ICredentialProviderCredentialEvents {
1137 CONST_VTBL ICredentialProviderCredentialEventsVtbl* lpVtbl;
1138};
1139
1140#ifdef COBJMACROS
1141#ifndef WIDL_C_INLINE_WRAPPERS
1142/*** IUnknown methods ***/
1143#define ICredentialProviderCredentialEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1144#define ICredentialProviderCredentialEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
1145#define ICredentialProviderCredentialEvents_Release(This) (This)->lpVtbl->Release(This)
1146/*** ICredentialProviderCredentialEvents methods ***/
1147#define ICredentialProviderCredentialEvents_SetFieldState(This,pcpc,dwFieldID,cpfs) (This)->lpVtbl->SetFieldState(This,pcpc,dwFieldID,cpfs)
1148#define ICredentialProviderCredentialEvents_SetFieldInteractiveState(This,pcpc,dwFieldID,cpfis) (This)->lpVtbl->SetFieldInteractiveState(This,pcpc,dwFieldID,cpfis)
1149#define ICredentialProviderCredentialEvents_SetFieldString(This,pcpc,dwFieldID,psz) (This)->lpVtbl->SetFieldString(This,pcpc,dwFieldID,psz)
1150#define ICredentialProviderCredentialEvents_SetFieldCheckbox(This,pcpc,dwFieldID,bChecked,pszLabel) (This)->lpVtbl->SetFieldCheckbox(This,pcpc,dwFieldID,bChecked,pszLabel)
1151#define ICredentialProviderCredentialEvents_SetFieldBitmap(This,pcpc,dwFieldID,hbmp) (This)->lpVtbl->SetFieldBitmap(This,pcpc,dwFieldID,hbmp)
1152#define ICredentialProviderCredentialEvents_SetFieldComboBoxSelectedItem(This,pcpc,dwFieldID,dwSelectedItem) (This)->lpVtbl->SetFieldComboBoxSelectedItem(This,pcpc,dwFieldID,dwSelectedItem)
1153#define ICredentialProviderCredentialEvents_DeleteFieldComboBoxItem(This,pcpc,dwFieldID,dwItem) (This)->lpVtbl->DeleteFieldComboBoxItem(This,pcpc,dwFieldID,dwItem)
1154#define ICredentialProviderCredentialEvents_AppendFieldComboBoxItem(This,pcpc,dwFieldID,pszItem) (This)->lpVtbl->AppendFieldComboBoxItem(This,pcpc,dwFieldID,pszItem)
1155#define ICredentialProviderCredentialEvents_SetFieldSubmitButton(This,pcpc,dwFieldID,dwAdjacentTo) (This)->lpVtbl->SetFieldSubmitButton(This,pcpc,dwFieldID,dwAdjacentTo)
1156#define ICredentialProviderCredentialEvents_OnCreatingWindow(This,phwndOwner) (This)->lpVtbl->OnCreatingWindow(This,phwndOwner)
1157#else
1158/*** IUnknown methods ***/
1159static inline HRESULT ICredentialProviderCredentialEvents_QueryInterface(ICredentialProviderCredentialEvents* This,REFIID riid,void **ppvObject) {
1160 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1161}
1162static inline ULONG ICredentialProviderCredentialEvents_AddRef(ICredentialProviderCredentialEvents* This) {
1163 return This->lpVtbl->AddRef(This);
1164}
1165static inline ULONG ICredentialProviderCredentialEvents_Release(ICredentialProviderCredentialEvents* This) {
1166 return This->lpVtbl->Release(This);
1167}
1168/*** ICredentialProviderCredentialEvents methods ***/
1169static inline HRESULT ICredentialProviderCredentialEvents_SetFieldState(ICredentialProviderCredentialEvents* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,CREDENTIAL_PROVIDER_FIELD_STATE cpfs) {
1170 return This->lpVtbl->SetFieldState(This,pcpc,dwFieldID,cpfs);
1171}
1172static inline HRESULT ICredentialProviderCredentialEvents_SetFieldInteractiveState(ICredentialProviderCredentialEvents* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE cpfis) {
1173 return This->lpVtbl->SetFieldInteractiveState(This,pcpc,dwFieldID,cpfis);
1174}
1175static inline HRESULT ICredentialProviderCredentialEvents_SetFieldString(ICredentialProviderCredentialEvents* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,LPCWSTR psz) {
1176 return This->lpVtbl->SetFieldString(This,pcpc,dwFieldID,psz);
1177}
1178static inline HRESULT ICredentialProviderCredentialEvents_SetFieldCheckbox(ICredentialProviderCredentialEvents* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,WINBOOL bChecked,LPCWSTR pszLabel) {
1179 return This->lpVtbl->SetFieldCheckbox(This,pcpc,dwFieldID,bChecked,pszLabel);
1180}
1181static inline HRESULT ICredentialProviderCredentialEvents_SetFieldBitmap(ICredentialProviderCredentialEvents* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,HBITMAP hbmp) {
1182 return This->lpVtbl->SetFieldBitmap(This,pcpc,dwFieldID,hbmp);
1183}
1184static inline HRESULT ICredentialProviderCredentialEvents_SetFieldComboBoxSelectedItem(ICredentialProviderCredentialEvents* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,DWORD dwSelectedItem) {
1185 return This->lpVtbl->SetFieldComboBoxSelectedItem(This,pcpc,dwFieldID,dwSelectedItem);
1186}
1187static inline HRESULT ICredentialProviderCredentialEvents_DeleteFieldComboBoxItem(ICredentialProviderCredentialEvents* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,DWORD dwItem) {
1188 return This->lpVtbl->DeleteFieldComboBoxItem(This,pcpc,dwFieldID,dwItem);
1189}
1190static inline HRESULT ICredentialProviderCredentialEvents_AppendFieldComboBoxItem(ICredentialProviderCredentialEvents* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,LPCWSTR pszItem) {
1191 return This->lpVtbl->AppendFieldComboBoxItem(This,pcpc,dwFieldID,pszItem);
1192}
1193static inline HRESULT ICredentialProviderCredentialEvents_SetFieldSubmitButton(ICredentialProviderCredentialEvents* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,DWORD dwAdjacentTo) {
1194 return This->lpVtbl->SetFieldSubmitButton(This,pcpc,dwFieldID,dwAdjacentTo);
1195}
1196static inline HRESULT ICredentialProviderCredentialEvents_OnCreatingWindow(ICredentialProviderCredentialEvents* This,HWND *phwndOwner) {
1197 return This->lpVtbl->OnCreatingWindow(This,phwndOwner);
1198}
1199#endif
1200#endif
1201
1202#endif
1203
1204
1205#endif /* __ICredentialProviderCredentialEvents_INTERFACE_DEFINED__ */
1206
1207#ifndef __ICredentialProviderEvents_FWD_DEFINED__
1208#define __ICredentialProviderEvents_FWD_DEFINED__
1209typedef interface ICredentialProviderEvents ICredentialProviderEvents;
1210#ifdef __cplusplus
1211interface ICredentialProviderEvents;
1212#endif /* __cplusplus */
1213#endif
1214
1215/*****************************************************************************
1216 * ICredentialProvider interface
1217 */
1218#ifndef __ICredentialProvider_INTERFACE_DEFINED__
1219#define __ICredentialProvider_INTERFACE_DEFINED__
1220
1221DEFINE_GUID(IID_ICredentialProvider, 0xd27c3481, 0x5a1c, 0x45b2, 0x8a,0xaa, 0xc2,0x0e,0xbb,0xe8,0x22,0x9e);
1222#if defined(__cplusplus) && !defined(CINTERFACE)
1223MIDL_INTERFACE("d27c3481-5a1c-45b2-8aaa-c20ebbe8229e")
1224ICredentialProvider : public IUnknown
1225{
1226 virtual HRESULT STDMETHODCALLTYPE SetUsageScenario(
1227 CREDENTIAL_PROVIDER_USAGE_SCENARIO cpus,
1228 DWORD dwFlags) = 0;
1229
1230 virtual HRESULT STDMETHODCALLTYPE SetSerialization(
1231 const CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcs) = 0;
1232
1233 virtual HRESULT STDMETHODCALLTYPE Advise(
1234 ICredentialProviderEvents *pcpe,
1235 UINT_PTR upAdviseContext) = 0;
1236
1237 virtual HRESULT STDMETHODCALLTYPE UnAdvise(
1238 ) = 0;
1239
1240 virtual HRESULT STDMETHODCALLTYPE GetFieldDescriptorCount(
1241 DWORD *pdwCount) = 0;
1242
1243 virtual HRESULT STDMETHODCALLTYPE GetFieldDescriptorAt(
1244 DWORD dwIndex,
1245 CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR **ppcpfd) = 0;
1246
1247 virtual HRESULT STDMETHODCALLTYPE GetCredentialCount(
1248 DWORD *pdwCount,
1249 DWORD *pdwDefault,
1250 WINBOOL *pbAutoLogonWithDefault) = 0;
1251
1252 virtual HRESULT STDMETHODCALLTYPE GetCredentialAt(
1253 DWORD dwIndex,
1254 ICredentialProviderCredential **ppcpc) = 0;
1255
1256};
1257#ifdef __CRT_UUID_DECL
1258__CRT_UUID_DECL(ICredentialProvider, 0xd27c3481, 0x5a1c, 0x45b2, 0x8a,0xaa, 0xc2,0x0e,0xbb,0xe8,0x22,0x9e)
1259#endif
1260#else
1261typedef struct ICredentialProviderVtbl {
1262 BEGIN_INTERFACE
1263
1264 /*** IUnknown methods ***/
1265 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1266 ICredentialProvider *This,
1267 REFIID riid,
1268 void **ppvObject);
1269
1270 ULONG (STDMETHODCALLTYPE *AddRef)(
1271 ICredentialProvider *This);
1272
1273 ULONG (STDMETHODCALLTYPE *Release)(
1274 ICredentialProvider *This);
1275
1276 /*** ICredentialProvider methods ***/
1277 HRESULT (STDMETHODCALLTYPE *SetUsageScenario)(
1278 ICredentialProvider *This,
1279 CREDENTIAL_PROVIDER_USAGE_SCENARIO cpus,
1280 DWORD dwFlags);
1281
1282 HRESULT (STDMETHODCALLTYPE *SetSerialization)(
1283 ICredentialProvider *This,
1284 const CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcs);
1285
1286 HRESULT (STDMETHODCALLTYPE *Advise)(
1287 ICredentialProvider *This,
1288 ICredentialProviderEvents *pcpe,
1289 UINT_PTR upAdviseContext);
1290
1291 HRESULT (STDMETHODCALLTYPE *UnAdvise)(
1292 ICredentialProvider *This);
1293
1294 HRESULT (STDMETHODCALLTYPE *GetFieldDescriptorCount)(
1295 ICredentialProvider *This,
1296 DWORD *pdwCount);
1297
1298 HRESULT (STDMETHODCALLTYPE *GetFieldDescriptorAt)(
1299 ICredentialProvider *This,
1300 DWORD dwIndex,
1301 CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR **ppcpfd);
1302
1303 HRESULT (STDMETHODCALLTYPE *GetCredentialCount)(
1304 ICredentialProvider *This,
1305 DWORD *pdwCount,
1306 DWORD *pdwDefault,
1307 WINBOOL *pbAutoLogonWithDefault);
1308
1309 HRESULT (STDMETHODCALLTYPE *GetCredentialAt)(
1310 ICredentialProvider *This,
1311 DWORD dwIndex,
1312 ICredentialProviderCredential **ppcpc);
1313
1314 END_INTERFACE
1315} ICredentialProviderVtbl;
1316
1317interface ICredentialProvider {
1318 CONST_VTBL ICredentialProviderVtbl* lpVtbl;
1319};
1320
1321#ifdef COBJMACROS
1322#ifndef WIDL_C_INLINE_WRAPPERS
1323/*** IUnknown methods ***/
1324#define ICredentialProvider_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1325#define ICredentialProvider_AddRef(This) (This)->lpVtbl->AddRef(This)
1326#define ICredentialProvider_Release(This) (This)->lpVtbl->Release(This)
1327/*** ICredentialProvider methods ***/
1328#define ICredentialProvider_SetUsageScenario(This,cpus,dwFlags) (This)->lpVtbl->SetUsageScenario(This,cpus,dwFlags)
1329#define ICredentialProvider_SetSerialization(This,pcpcs) (This)->lpVtbl->SetSerialization(This,pcpcs)
1330#define ICredentialProvider_Advise(This,pcpe,upAdviseContext) (This)->lpVtbl->Advise(This,pcpe,upAdviseContext)
1331#define ICredentialProvider_UnAdvise(This) (This)->lpVtbl->UnAdvise(This)
1332#define ICredentialProvider_GetFieldDescriptorCount(This,pdwCount) (This)->lpVtbl->GetFieldDescriptorCount(This,pdwCount)
1333#define ICredentialProvider_GetFieldDescriptorAt(This,dwIndex,ppcpfd) (This)->lpVtbl->GetFieldDescriptorAt(This,dwIndex,ppcpfd)
1334#define ICredentialProvider_GetCredentialCount(This,pdwCount,pdwDefault,pbAutoLogonWithDefault) (This)->lpVtbl->GetCredentialCount(This,pdwCount,pdwDefault,pbAutoLogonWithDefault)
1335#define ICredentialProvider_GetCredentialAt(This,dwIndex,ppcpc) (This)->lpVtbl->GetCredentialAt(This,dwIndex,ppcpc)
1336#else
1337/*** IUnknown methods ***/
1338static inline HRESULT ICredentialProvider_QueryInterface(ICredentialProvider* This,REFIID riid,void **ppvObject) {
1339 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1340}
1341static inline ULONG ICredentialProvider_AddRef(ICredentialProvider* This) {
1342 return This->lpVtbl->AddRef(This);
1343}
1344static inline ULONG ICredentialProvider_Release(ICredentialProvider* This) {
1345 return This->lpVtbl->Release(This);
1346}
1347/*** ICredentialProvider methods ***/
1348static inline HRESULT ICredentialProvider_SetUsageScenario(ICredentialProvider* This,CREDENTIAL_PROVIDER_USAGE_SCENARIO cpus,DWORD dwFlags) {
1349 return This->lpVtbl->SetUsageScenario(This,cpus,dwFlags);
1350}
1351static inline HRESULT ICredentialProvider_SetSerialization(ICredentialProvider* This,const CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcs) {
1352 return This->lpVtbl->SetSerialization(This,pcpcs);
1353}
1354static inline HRESULT ICredentialProvider_Advise(ICredentialProvider* This,ICredentialProviderEvents *pcpe,UINT_PTR upAdviseContext) {
1355 return This->lpVtbl->Advise(This,pcpe,upAdviseContext);
1356}
1357static inline HRESULT ICredentialProvider_UnAdvise(ICredentialProvider* This) {
1358 return This->lpVtbl->UnAdvise(This);
1359}
1360static inline HRESULT ICredentialProvider_GetFieldDescriptorCount(ICredentialProvider* This,DWORD *pdwCount) {
1361 return This->lpVtbl->GetFieldDescriptorCount(This,pdwCount);
1362}
1363static inline HRESULT ICredentialProvider_GetFieldDescriptorAt(ICredentialProvider* This,DWORD dwIndex,CREDENTIAL_PROVIDER_FIELD_DESCRIPTOR **ppcpfd) {
1364 return This->lpVtbl->GetFieldDescriptorAt(This,dwIndex,ppcpfd);
1365}
1366static inline HRESULT ICredentialProvider_GetCredentialCount(ICredentialProvider* This,DWORD *pdwCount,DWORD *pdwDefault,WINBOOL *pbAutoLogonWithDefault) {
1367 return This->lpVtbl->GetCredentialCount(This,pdwCount,pdwDefault,pbAutoLogonWithDefault);
1368}
1369static inline HRESULT ICredentialProvider_GetCredentialAt(ICredentialProvider* This,DWORD dwIndex,ICredentialProviderCredential **ppcpc) {
1370 return This->lpVtbl->GetCredentialAt(This,dwIndex,ppcpc);
1371}
1372#endif
1373#endif
1374
1375#endif
1376
1377
1378#endif /* __ICredentialProvider_INTERFACE_DEFINED__ */
1379
1380/*****************************************************************************
1381 * ICredentialProviderEvents interface
1382 */
1383#ifndef __ICredentialProviderEvents_INTERFACE_DEFINED__
1384#define __ICredentialProviderEvents_INTERFACE_DEFINED__
1385
1386DEFINE_GUID(IID_ICredentialProviderEvents, 0x34201e5a, 0xa787, 0x41a3, 0xa5,0xa4, 0xbd,0x6d,0xcf,0x2a,0x85,0x4e);
1387#if defined(__cplusplus) && !defined(CINTERFACE)
1388MIDL_INTERFACE("34201e5a-a787-41a3-a5a4-bd6dcf2a854e")
1389ICredentialProviderEvents : public IUnknown
1390{
1391 virtual HRESULT STDMETHODCALLTYPE CredentialsChanged(
1392 UINT_PTR upAdviseContext) = 0;
1393
1394};
1395#ifdef __CRT_UUID_DECL
1396__CRT_UUID_DECL(ICredentialProviderEvents, 0x34201e5a, 0xa787, 0x41a3, 0xa5,0xa4, 0xbd,0x6d,0xcf,0x2a,0x85,0x4e)
1397#endif
1398#else
1399typedef struct ICredentialProviderEventsVtbl {
1400 BEGIN_INTERFACE
1401
1402 /*** IUnknown methods ***/
1403 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1404 ICredentialProviderEvents *This,
1405 REFIID riid,
1406 void **ppvObject);
1407
1408 ULONG (STDMETHODCALLTYPE *AddRef)(
1409 ICredentialProviderEvents *This);
1410
1411 ULONG (STDMETHODCALLTYPE *Release)(
1412 ICredentialProviderEvents *This);
1413
1414 /*** ICredentialProviderEvents methods ***/
1415 HRESULT (STDMETHODCALLTYPE *CredentialsChanged)(
1416 ICredentialProviderEvents *This,
1417 UINT_PTR upAdviseContext);
1418
1419 END_INTERFACE
1420} ICredentialProviderEventsVtbl;
1421
1422interface ICredentialProviderEvents {
1423 CONST_VTBL ICredentialProviderEventsVtbl* lpVtbl;
1424};
1425
1426#ifdef COBJMACROS
1427#ifndef WIDL_C_INLINE_WRAPPERS
1428/*** IUnknown methods ***/
1429#define ICredentialProviderEvents_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1430#define ICredentialProviderEvents_AddRef(This) (This)->lpVtbl->AddRef(This)
1431#define ICredentialProviderEvents_Release(This) (This)->lpVtbl->Release(This)
1432/*** ICredentialProviderEvents methods ***/
1433#define ICredentialProviderEvents_CredentialsChanged(This,upAdviseContext) (This)->lpVtbl->CredentialsChanged(This,upAdviseContext)
1434#else
1435/*** IUnknown methods ***/
1436static inline HRESULT ICredentialProviderEvents_QueryInterface(ICredentialProviderEvents* This,REFIID riid,void **ppvObject) {
1437 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1438}
1439static inline ULONG ICredentialProviderEvents_AddRef(ICredentialProviderEvents* This) {
1440 return This->lpVtbl->AddRef(This);
1441}
1442static inline ULONG ICredentialProviderEvents_Release(ICredentialProviderEvents* This) {
1443 return This->lpVtbl->Release(This);
1444}
1445/*** ICredentialProviderEvents methods ***/
1446static inline HRESULT ICredentialProviderEvents_CredentialsChanged(ICredentialProviderEvents* This,UINT_PTR upAdviseContext) {
1447 return This->lpVtbl->CredentialsChanged(This,upAdviseContext);
1448}
1449#endif
1450#endif
1451
1452#endif
1453
1454
1455#endif /* __ICredentialProviderEvents_INTERFACE_DEFINED__ */
1456
1457/*****************************************************************************
1458 * ICredentialProviderFilter interface
1459 */
1460#ifndef __ICredentialProviderFilter_INTERFACE_DEFINED__
1461#define __ICredentialProviderFilter_INTERFACE_DEFINED__
1462
1463DEFINE_GUID(IID_ICredentialProviderFilter, 0xa5da53f9, 0xd475, 0x4080, 0xa1,0x20, 0x91,0x0c,0x4a,0x73,0x98,0x80);
1464#if defined(__cplusplus) && !defined(CINTERFACE)
1465MIDL_INTERFACE("a5da53f9-d475-4080-a120-910c4a739880")
1466ICredentialProviderFilter : public IUnknown
1467{
1468 virtual HRESULT STDMETHODCALLTYPE Filter(
1469 CREDENTIAL_PROVIDER_USAGE_SCENARIO cpus,
1470 DWORD dwFlags,
1471 GUID *rgclsidProviders,
1472 WINBOOL *rgbAllow,
1473 DWORD cProviders) = 0;
1474
1475 virtual HRESULT STDMETHODCALLTYPE UpdateRemoteCredential(
1476 const CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcsIn,
1477 CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcsOut) = 0;
1478
1479};
1480#ifdef __CRT_UUID_DECL
1481__CRT_UUID_DECL(ICredentialProviderFilter, 0xa5da53f9, 0xd475, 0x4080, 0xa1,0x20, 0x91,0x0c,0x4a,0x73,0x98,0x80)
1482#endif
1483#else
1484typedef struct ICredentialProviderFilterVtbl {
1485 BEGIN_INTERFACE
1486
1487 /*** IUnknown methods ***/
1488 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1489 ICredentialProviderFilter *This,
1490 REFIID riid,
1491 void **ppvObject);
1492
1493 ULONG (STDMETHODCALLTYPE *AddRef)(
1494 ICredentialProviderFilter *This);
1495
1496 ULONG (STDMETHODCALLTYPE *Release)(
1497 ICredentialProviderFilter *This);
1498
1499 /*** ICredentialProviderFilter methods ***/
1500 HRESULT (STDMETHODCALLTYPE *Filter)(
1501 ICredentialProviderFilter *This,
1502 CREDENTIAL_PROVIDER_USAGE_SCENARIO cpus,
1503 DWORD dwFlags,
1504 GUID *rgclsidProviders,
1505 WINBOOL *rgbAllow,
1506 DWORD cProviders);
1507
1508 HRESULT (STDMETHODCALLTYPE *UpdateRemoteCredential)(
1509 ICredentialProviderFilter *This,
1510 const CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcsIn,
1511 CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcsOut);
1512
1513 END_INTERFACE
1514} ICredentialProviderFilterVtbl;
1515
1516interface ICredentialProviderFilter {
1517 CONST_VTBL ICredentialProviderFilterVtbl* lpVtbl;
1518};
1519
1520#ifdef COBJMACROS
1521#ifndef WIDL_C_INLINE_WRAPPERS
1522/*** IUnknown methods ***/
1523#define ICredentialProviderFilter_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1524#define ICredentialProviderFilter_AddRef(This) (This)->lpVtbl->AddRef(This)
1525#define ICredentialProviderFilter_Release(This) (This)->lpVtbl->Release(This)
1526/*** ICredentialProviderFilter methods ***/
1527#define ICredentialProviderFilter_Filter(This,cpus,dwFlags,rgclsidProviders,rgbAllow,cProviders) (This)->lpVtbl->Filter(This,cpus,dwFlags,rgclsidProviders,rgbAllow,cProviders)
1528#define ICredentialProviderFilter_UpdateRemoteCredential(This,pcpcsIn,pcpcsOut) (This)->lpVtbl->UpdateRemoteCredential(This,pcpcsIn,pcpcsOut)
1529#else
1530/*** IUnknown methods ***/
1531static inline HRESULT ICredentialProviderFilter_QueryInterface(ICredentialProviderFilter* This,REFIID riid,void **ppvObject) {
1532 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1533}
1534static inline ULONG ICredentialProviderFilter_AddRef(ICredentialProviderFilter* This) {
1535 return This->lpVtbl->AddRef(This);
1536}
1537static inline ULONG ICredentialProviderFilter_Release(ICredentialProviderFilter* This) {
1538 return This->lpVtbl->Release(This);
1539}
1540/*** ICredentialProviderFilter methods ***/
1541static inline HRESULT ICredentialProviderFilter_Filter(ICredentialProviderFilter* This,CREDENTIAL_PROVIDER_USAGE_SCENARIO cpus,DWORD dwFlags,GUID *rgclsidProviders,WINBOOL *rgbAllow,DWORD cProviders) {
1542 return This->lpVtbl->Filter(This,cpus,dwFlags,rgclsidProviders,rgbAllow,cProviders);
1543}
1544static inline HRESULT ICredentialProviderFilter_UpdateRemoteCredential(ICredentialProviderFilter* This,const CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcsIn,CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcsOut) {
1545 return This->lpVtbl->UpdateRemoteCredential(This,pcpcsIn,pcpcsOut);
1546}
1547#endif
1548#endif
1549
1550#endif
1551
1552
1553#endif /* __ICredentialProviderFilter_INTERFACE_DEFINED__ */
1554
1555#if (NTDDI_VERSION >= NTDDI_WIN8)
1556/*****************************************************************************
1557 * ICredentialProviderCredential2 interface
1558 */
1559#ifndef __ICredentialProviderCredential2_INTERFACE_DEFINED__
1560#define __ICredentialProviderCredential2_INTERFACE_DEFINED__
1561
1562DEFINE_GUID(IID_ICredentialProviderCredential2, 0xfd672c54, 0x40ea, 0x4d6e, 0x9b,0x49, 0xcf,0xb1,0xa7,0x50,0x7b,0xd7);
1563#if defined(__cplusplus) && !defined(CINTERFACE)
1564MIDL_INTERFACE("fd672c54-40ea-4d6e-9b49-cfb1a7507bd7")
1565ICredentialProviderCredential2 : public ICredentialProviderCredential
1566{
1567 virtual HRESULT STDMETHODCALLTYPE GetUserSid(
1568 LPWSTR *sid) = 0;
1569
1570};
1571#ifdef __CRT_UUID_DECL
1572__CRT_UUID_DECL(ICredentialProviderCredential2, 0xfd672c54, 0x40ea, 0x4d6e, 0x9b,0x49, 0xcf,0xb1,0xa7,0x50,0x7b,0xd7)
1573#endif
1574#else
1575typedef struct ICredentialProviderCredential2Vtbl {
1576 BEGIN_INTERFACE
1577
1578 /*** IUnknown methods ***/
1579 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1580 ICredentialProviderCredential2 *This,
1581 REFIID riid,
1582 void **ppvObject);
1583
1584 ULONG (STDMETHODCALLTYPE *AddRef)(
1585 ICredentialProviderCredential2 *This);
1586
1587 ULONG (STDMETHODCALLTYPE *Release)(
1588 ICredentialProviderCredential2 *This);
1589
1590 /*** ICredentialProviderCredential methods ***/
1591 HRESULT (STDMETHODCALLTYPE *Advise)(
1592 ICredentialProviderCredential2 *This,
1593 ICredentialProviderCredentialEvents *pcpce);
1594
1595 HRESULT (STDMETHODCALLTYPE *UnAdvise)(
1596 ICredentialProviderCredential2 *This);
1597
1598 HRESULT (STDMETHODCALLTYPE *SetSelected)(
1599 ICredentialProviderCredential2 *This,
1600 WINBOOL *pbAutoLogon);
1601
1602 HRESULT (STDMETHODCALLTYPE *SetDeselected)(
1603 ICredentialProviderCredential2 *This);
1604
1605 HRESULT (STDMETHODCALLTYPE *GetFieldState)(
1606 ICredentialProviderCredential2 *This,
1607 DWORD dwFieldID,
1608 CREDENTIAL_PROVIDER_FIELD_STATE *pcpfs,
1609 CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE *pcpfis);
1610
1611 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
1612 ICredentialProviderCredential2 *This,
1613 DWORD dwFieldID,
1614 LPWSTR *ppsz);
1615
1616 HRESULT (STDMETHODCALLTYPE *GetBitmapValue)(
1617 ICredentialProviderCredential2 *This,
1618 DWORD dwFieldID,
1619 HBITMAP *phbmp);
1620
1621 HRESULT (STDMETHODCALLTYPE *GetCheckboxValue)(
1622 ICredentialProviderCredential2 *This,
1623 DWORD dwFieldID,
1624 WINBOOL *pbChecked,
1625 LPWSTR *ppszLabel);
1626
1627 HRESULT (STDMETHODCALLTYPE *GetSubmitButtonValue)(
1628 ICredentialProviderCredential2 *This,
1629 DWORD dwFieldID,
1630 DWORD *pdwAdjacentTo);
1631
1632 HRESULT (STDMETHODCALLTYPE *GetComboBoxValueCount)(
1633 ICredentialProviderCredential2 *This,
1634 DWORD dwFieldID,
1635 DWORD *pcItems,
1636 DWORD *pdwSelectedItem);
1637
1638 HRESULT (STDMETHODCALLTYPE *GetComboBoxValueAt)(
1639 ICredentialProviderCredential2 *This,
1640 DWORD dwFieldID,
1641 DWORD dwItem,
1642 LPWSTR *ppszItem);
1643
1644 HRESULT (STDMETHODCALLTYPE *SetStringValue)(
1645 ICredentialProviderCredential2 *This,
1646 DWORD dwFieldID,
1647 LPCWSTR psz);
1648
1649 HRESULT (STDMETHODCALLTYPE *SetCheckboxValue)(
1650 ICredentialProviderCredential2 *This,
1651 DWORD dwFieldID,
1652 WINBOOL bChecked);
1653
1654 HRESULT (STDMETHODCALLTYPE *SetComboBoxSelectedValue)(
1655 ICredentialProviderCredential2 *This,
1656 DWORD dwFieldID,
1657 DWORD dwSelectedItem);
1658
1659 HRESULT (STDMETHODCALLTYPE *CommandLinkClicked)(
1660 ICredentialProviderCredential2 *This,
1661 DWORD dwFieldID);
1662
1663 HRESULT (STDMETHODCALLTYPE *GetSerialization)(
1664 ICredentialProviderCredential2 *This,
1665 CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE *pcpgsr,
1666 CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcs,
1667 LPWSTR *ppszOptionalStatusText,
1668 CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon);
1669
1670 HRESULT (STDMETHODCALLTYPE *ReportResult)(
1671 ICredentialProviderCredential2 *This,
1672 NTSTATUS ntsStatus,
1673 NTSTATUS ntsSubstatus,
1674 LPWSTR *ppszOptionalStatusText,
1675 CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon);
1676
1677 /*** ICredentialProviderCredential2 methods ***/
1678 HRESULT (STDMETHODCALLTYPE *GetUserSid)(
1679 ICredentialProviderCredential2 *This,
1680 LPWSTR *sid);
1681
1682 END_INTERFACE
1683} ICredentialProviderCredential2Vtbl;
1684
1685interface ICredentialProviderCredential2 {
1686 CONST_VTBL ICredentialProviderCredential2Vtbl* lpVtbl;
1687};
1688
1689#ifdef COBJMACROS
1690#ifndef WIDL_C_INLINE_WRAPPERS
1691/*** IUnknown methods ***/
1692#define ICredentialProviderCredential2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1693#define ICredentialProviderCredential2_AddRef(This) (This)->lpVtbl->AddRef(This)
1694#define ICredentialProviderCredential2_Release(This) (This)->lpVtbl->Release(This)
1695/*** ICredentialProviderCredential methods ***/
1696#define ICredentialProviderCredential2_Advise(This,pcpce) (This)->lpVtbl->Advise(This,pcpce)
1697#define ICredentialProviderCredential2_UnAdvise(This) (This)->lpVtbl->UnAdvise(This)
1698#define ICredentialProviderCredential2_SetSelected(This,pbAutoLogon) (This)->lpVtbl->SetSelected(This,pbAutoLogon)
1699#define ICredentialProviderCredential2_SetDeselected(This) (This)->lpVtbl->SetDeselected(This)
1700#define ICredentialProviderCredential2_GetFieldState(This,dwFieldID,pcpfs,pcpfis) (This)->lpVtbl->GetFieldState(This,dwFieldID,pcpfs,pcpfis)
1701#define ICredentialProviderCredential2_GetStringValue(This,dwFieldID,ppsz) (This)->lpVtbl->GetStringValue(This,dwFieldID,ppsz)
1702#define ICredentialProviderCredential2_GetBitmapValue(This,dwFieldID,phbmp) (This)->lpVtbl->GetBitmapValue(This,dwFieldID,phbmp)
1703#define ICredentialProviderCredential2_GetCheckboxValue(This,dwFieldID,pbChecked,ppszLabel) (This)->lpVtbl->GetCheckboxValue(This,dwFieldID,pbChecked,ppszLabel)
1704#define ICredentialProviderCredential2_GetSubmitButtonValue(This,dwFieldID,pdwAdjacentTo) (This)->lpVtbl->GetSubmitButtonValue(This,dwFieldID,pdwAdjacentTo)
1705#define ICredentialProviderCredential2_GetComboBoxValueCount(This,dwFieldID,pcItems,pdwSelectedItem) (This)->lpVtbl->GetComboBoxValueCount(This,dwFieldID,pcItems,pdwSelectedItem)
1706#define ICredentialProviderCredential2_GetComboBoxValueAt(This,dwFieldID,dwItem,ppszItem) (This)->lpVtbl->GetComboBoxValueAt(This,dwFieldID,dwItem,ppszItem)
1707#define ICredentialProviderCredential2_SetStringValue(This,dwFieldID,psz) (This)->lpVtbl->SetStringValue(This,dwFieldID,psz)
1708#define ICredentialProviderCredential2_SetCheckboxValue(This,dwFieldID,bChecked) (This)->lpVtbl->SetCheckboxValue(This,dwFieldID,bChecked)
1709#define ICredentialProviderCredential2_SetComboBoxSelectedValue(This,dwFieldID,dwSelectedItem) (This)->lpVtbl->SetComboBoxSelectedValue(This,dwFieldID,dwSelectedItem)
1710#define ICredentialProviderCredential2_CommandLinkClicked(This,dwFieldID) (This)->lpVtbl->CommandLinkClicked(This,dwFieldID)
1711#define ICredentialProviderCredential2_GetSerialization(This,pcpgsr,pcpcs,ppszOptionalStatusText,pcpsiOptionalStatusIcon) (This)->lpVtbl->GetSerialization(This,pcpgsr,pcpcs,ppszOptionalStatusText,pcpsiOptionalStatusIcon)
1712#define ICredentialProviderCredential2_ReportResult(This,ntsStatus,ntsSubstatus,ppszOptionalStatusText,pcpsiOptionalStatusIcon) (This)->lpVtbl->ReportResult(This,ntsStatus,ntsSubstatus,ppszOptionalStatusText,pcpsiOptionalStatusIcon)
1713/*** ICredentialProviderCredential2 methods ***/
1714#define ICredentialProviderCredential2_GetUserSid(This,sid) (This)->lpVtbl->GetUserSid(This,sid)
1715#else
1716/*** IUnknown methods ***/
1717static inline HRESULT ICredentialProviderCredential2_QueryInterface(ICredentialProviderCredential2* This,REFIID riid,void **ppvObject) {
1718 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1719}
1720static inline ULONG ICredentialProviderCredential2_AddRef(ICredentialProviderCredential2* This) {
1721 return This->lpVtbl->AddRef(This);
1722}
1723static inline ULONG ICredentialProviderCredential2_Release(ICredentialProviderCredential2* This) {
1724 return This->lpVtbl->Release(This);
1725}
1726/*** ICredentialProviderCredential methods ***/
1727static inline HRESULT ICredentialProviderCredential2_Advise(ICredentialProviderCredential2* This,ICredentialProviderCredentialEvents *pcpce) {
1728 return This->lpVtbl->Advise(This,pcpce);
1729}
1730static inline HRESULT ICredentialProviderCredential2_UnAdvise(ICredentialProviderCredential2* This) {
1731 return This->lpVtbl->UnAdvise(This);
1732}
1733static inline HRESULT ICredentialProviderCredential2_SetSelected(ICredentialProviderCredential2* This,WINBOOL *pbAutoLogon) {
1734 return This->lpVtbl->SetSelected(This,pbAutoLogon);
1735}
1736static inline HRESULT ICredentialProviderCredential2_SetDeselected(ICredentialProviderCredential2* This) {
1737 return This->lpVtbl->SetDeselected(This);
1738}
1739static inline HRESULT ICredentialProviderCredential2_GetFieldState(ICredentialProviderCredential2* This,DWORD dwFieldID,CREDENTIAL_PROVIDER_FIELD_STATE *pcpfs,CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE *pcpfis) {
1740 return This->lpVtbl->GetFieldState(This,dwFieldID,pcpfs,pcpfis);
1741}
1742static inline HRESULT ICredentialProviderCredential2_GetStringValue(ICredentialProviderCredential2* This,DWORD dwFieldID,LPWSTR *ppsz) {
1743 return This->lpVtbl->GetStringValue(This,dwFieldID,ppsz);
1744}
1745static inline HRESULT ICredentialProviderCredential2_GetBitmapValue(ICredentialProviderCredential2* This,DWORD dwFieldID,HBITMAP *phbmp) {
1746 return This->lpVtbl->GetBitmapValue(This,dwFieldID,phbmp);
1747}
1748static inline HRESULT ICredentialProviderCredential2_GetCheckboxValue(ICredentialProviderCredential2* This,DWORD dwFieldID,WINBOOL *pbChecked,LPWSTR *ppszLabel) {
1749 return This->lpVtbl->GetCheckboxValue(This,dwFieldID,pbChecked,ppszLabel);
1750}
1751static inline HRESULT ICredentialProviderCredential2_GetSubmitButtonValue(ICredentialProviderCredential2* This,DWORD dwFieldID,DWORD *pdwAdjacentTo) {
1752 return This->lpVtbl->GetSubmitButtonValue(This,dwFieldID,pdwAdjacentTo);
1753}
1754static inline HRESULT ICredentialProviderCredential2_GetComboBoxValueCount(ICredentialProviderCredential2* This,DWORD dwFieldID,DWORD *pcItems,DWORD *pdwSelectedItem) {
1755 return This->lpVtbl->GetComboBoxValueCount(This,dwFieldID,pcItems,pdwSelectedItem);
1756}
1757static inline HRESULT ICredentialProviderCredential2_GetComboBoxValueAt(ICredentialProviderCredential2* This,DWORD dwFieldID,DWORD dwItem,LPWSTR *ppszItem) {
1758 return This->lpVtbl->GetComboBoxValueAt(This,dwFieldID,dwItem,ppszItem);
1759}
1760static inline HRESULT ICredentialProviderCredential2_SetStringValue(ICredentialProviderCredential2* This,DWORD dwFieldID,LPCWSTR psz) {
1761 return This->lpVtbl->SetStringValue(This,dwFieldID,psz);
1762}
1763static inline HRESULT ICredentialProviderCredential2_SetCheckboxValue(ICredentialProviderCredential2* This,DWORD dwFieldID,WINBOOL bChecked) {
1764 return This->lpVtbl->SetCheckboxValue(This,dwFieldID,bChecked);
1765}
1766static inline HRESULT ICredentialProviderCredential2_SetComboBoxSelectedValue(ICredentialProviderCredential2* This,DWORD dwFieldID,DWORD dwSelectedItem) {
1767 return This->lpVtbl->SetComboBoxSelectedValue(This,dwFieldID,dwSelectedItem);
1768}
1769static inline HRESULT ICredentialProviderCredential2_CommandLinkClicked(ICredentialProviderCredential2* This,DWORD dwFieldID) {
1770 return This->lpVtbl->CommandLinkClicked(This,dwFieldID);
1771}
1772static inline HRESULT ICredentialProviderCredential2_GetSerialization(ICredentialProviderCredential2* This,CREDENTIAL_PROVIDER_GET_SERIALIZATION_RESPONSE *pcpgsr,CREDENTIAL_PROVIDER_CREDENTIAL_SERIALIZATION *pcpcs,LPWSTR *ppszOptionalStatusText,CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon) {
1773 return This->lpVtbl->GetSerialization(This,pcpgsr,pcpcs,ppszOptionalStatusText,pcpsiOptionalStatusIcon);
1774}
1775static inline HRESULT ICredentialProviderCredential2_ReportResult(ICredentialProviderCredential2* This,NTSTATUS ntsStatus,NTSTATUS ntsSubstatus,LPWSTR *ppszOptionalStatusText,CREDENTIAL_PROVIDER_STATUS_ICON *pcpsiOptionalStatusIcon) {
1776 return This->lpVtbl->ReportResult(This,ntsStatus,ntsSubstatus,ppszOptionalStatusText,pcpsiOptionalStatusIcon);
1777}
1778/*** ICredentialProviderCredential2 methods ***/
1779static inline HRESULT ICredentialProviderCredential2_GetUserSid(ICredentialProviderCredential2* This,LPWSTR *sid) {
1780 return This->lpVtbl->GetUserSid(This,sid);
1781}
1782#endif
1783#endif
1784
1785#endif
1786
1787
1788#endif /* __ICredentialProviderCredential2_INTERFACE_DEFINED__ */
1789
1790/*****************************************************************************
1791 * ICredentialProviderCredentialWithFieldOptions interface
1792 */
1793#ifndef __ICredentialProviderCredentialWithFieldOptions_INTERFACE_DEFINED__
1794#define __ICredentialProviderCredentialWithFieldOptions_INTERFACE_DEFINED__
1795
1796DEFINE_GUID(IID_ICredentialProviderCredentialWithFieldOptions, 0xdbc6fb30, 0xc843, 0x49e3, 0xa6,0x45, 0x57,0x3e,0x6f,0x39,0x44,0x6a);
1797#if defined(__cplusplus) && !defined(CINTERFACE)
1798MIDL_INTERFACE("dbc6fb30-c843-49e3-a645-573e6f39446a")
1799ICredentialProviderCredentialWithFieldOptions : public IUnknown
1800{
1801 virtual HRESULT STDMETHODCALLTYPE GetFieldOptions(
1802 DWORD fieldID,
1803 CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS *options) = 0;
1804
1805};
1806#ifdef __CRT_UUID_DECL
1807__CRT_UUID_DECL(ICredentialProviderCredentialWithFieldOptions, 0xdbc6fb30, 0xc843, 0x49e3, 0xa6,0x45, 0x57,0x3e,0x6f,0x39,0x44,0x6a)
1808#endif
1809#else
1810typedef struct ICredentialProviderCredentialWithFieldOptionsVtbl {
1811 BEGIN_INTERFACE
1812
1813 /*** IUnknown methods ***/
1814 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1815 ICredentialProviderCredentialWithFieldOptions *This,
1816 REFIID riid,
1817 void **ppvObject);
1818
1819 ULONG (STDMETHODCALLTYPE *AddRef)(
1820 ICredentialProviderCredentialWithFieldOptions *This);
1821
1822 ULONG (STDMETHODCALLTYPE *Release)(
1823 ICredentialProviderCredentialWithFieldOptions *This);
1824
1825 /*** ICredentialProviderCredentialWithFieldOptions methods ***/
1826 HRESULT (STDMETHODCALLTYPE *GetFieldOptions)(
1827 ICredentialProviderCredentialWithFieldOptions *This,
1828 DWORD fieldID,
1829 CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS *options);
1830
1831 END_INTERFACE
1832} ICredentialProviderCredentialWithFieldOptionsVtbl;
1833
1834interface ICredentialProviderCredentialWithFieldOptions {
1835 CONST_VTBL ICredentialProviderCredentialWithFieldOptionsVtbl* lpVtbl;
1836};
1837
1838#ifdef COBJMACROS
1839#ifndef WIDL_C_INLINE_WRAPPERS
1840/*** IUnknown methods ***/
1841#define ICredentialProviderCredentialWithFieldOptions_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1842#define ICredentialProviderCredentialWithFieldOptions_AddRef(This) (This)->lpVtbl->AddRef(This)
1843#define ICredentialProviderCredentialWithFieldOptions_Release(This) (This)->lpVtbl->Release(This)
1844/*** ICredentialProviderCredentialWithFieldOptions methods ***/
1845#define ICredentialProviderCredentialWithFieldOptions_GetFieldOptions(This,fieldID,options) (This)->lpVtbl->GetFieldOptions(This,fieldID,options)
1846#else
1847/*** IUnknown methods ***/
1848static inline HRESULT ICredentialProviderCredentialWithFieldOptions_QueryInterface(ICredentialProviderCredentialWithFieldOptions* This,REFIID riid,void **ppvObject) {
1849 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
1850}
1851static inline ULONG ICredentialProviderCredentialWithFieldOptions_AddRef(ICredentialProviderCredentialWithFieldOptions* This) {
1852 return This->lpVtbl->AddRef(This);
1853}
1854static inline ULONG ICredentialProviderCredentialWithFieldOptions_Release(ICredentialProviderCredentialWithFieldOptions* This) {
1855 return This->lpVtbl->Release(This);
1856}
1857/*** ICredentialProviderCredentialWithFieldOptions methods ***/
1858static inline HRESULT ICredentialProviderCredentialWithFieldOptions_GetFieldOptions(ICredentialProviderCredentialWithFieldOptions* This,DWORD fieldID,CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS *options) {
1859 return This->lpVtbl->GetFieldOptions(This,fieldID,options);
1860}
1861#endif
1862#endif
1863
1864#endif
1865
1866
1867#endif /* __ICredentialProviderCredentialWithFieldOptions_INTERFACE_DEFINED__ */
1868
1869/*****************************************************************************
1870 * ICredentialProviderCredentialEvents2 interface
1871 */
1872#ifndef __ICredentialProviderCredentialEvents2_INTERFACE_DEFINED__
1873#define __ICredentialProviderCredentialEvents2_INTERFACE_DEFINED__
1874
1875DEFINE_GUID(IID_ICredentialProviderCredentialEvents2, 0xb53c00b6, 0x9922, 0x4b78, 0xb1,0xf4, 0xdd,0xfe,0x77,0x4d,0xc3,0x9b);
1876#if defined(__cplusplus) && !defined(CINTERFACE)
1877MIDL_INTERFACE("b53c00b6-9922-4b78-b1f4-ddfe774dc39b")
1878ICredentialProviderCredentialEvents2 : public ICredentialProviderCredentialEvents
1879{
1880 virtual HRESULT STDMETHODCALLTYPE BeginFieldUpdates(
1881 ) = 0;
1882
1883 virtual HRESULT STDMETHODCALLTYPE EndFieldUpdates(
1884 ) = 0;
1885
1886 virtual HRESULT STDMETHODCALLTYPE SetFieldOptions(
1887 ICredentialProviderCredential *credential,
1888 DWORD fieldID,
1889 CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS options) = 0;
1890
1891};
1892#ifdef __CRT_UUID_DECL
1893__CRT_UUID_DECL(ICredentialProviderCredentialEvents2, 0xb53c00b6, 0x9922, 0x4b78, 0xb1,0xf4, 0xdd,0xfe,0x77,0x4d,0xc3,0x9b)
1894#endif
1895#else
1896typedef struct ICredentialProviderCredentialEvents2Vtbl {
1897 BEGIN_INTERFACE
1898
1899 /*** IUnknown methods ***/
1900 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
1901 ICredentialProviderCredentialEvents2 *This,
1902 REFIID riid,
1903 void **ppvObject);
1904
1905 ULONG (STDMETHODCALLTYPE *AddRef)(
1906 ICredentialProviderCredentialEvents2 *This);
1907
1908 ULONG (STDMETHODCALLTYPE *Release)(
1909 ICredentialProviderCredentialEvents2 *This);
1910
1911 /*** ICredentialProviderCredentialEvents methods ***/
1912 HRESULT (STDMETHODCALLTYPE *SetFieldState)(
1913 ICredentialProviderCredentialEvents2 *This,
1914 ICredentialProviderCredential *pcpc,
1915 DWORD dwFieldID,
1916 CREDENTIAL_PROVIDER_FIELD_STATE cpfs);
1917
1918 HRESULT (STDMETHODCALLTYPE *SetFieldInteractiveState)(
1919 ICredentialProviderCredentialEvents2 *This,
1920 ICredentialProviderCredential *pcpc,
1921 DWORD dwFieldID,
1922 CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE cpfis);
1923
1924 HRESULT (STDMETHODCALLTYPE *SetFieldString)(
1925 ICredentialProviderCredentialEvents2 *This,
1926 ICredentialProviderCredential *pcpc,
1927 DWORD dwFieldID,
1928 LPCWSTR psz);
1929
1930 HRESULT (STDMETHODCALLTYPE *SetFieldCheckbox)(
1931 ICredentialProviderCredentialEvents2 *This,
1932 ICredentialProviderCredential *pcpc,
1933 DWORD dwFieldID,
1934 WINBOOL bChecked,
1935 LPCWSTR pszLabel);
1936
1937 HRESULT (STDMETHODCALLTYPE *SetFieldBitmap)(
1938 ICredentialProviderCredentialEvents2 *This,
1939 ICredentialProviderCredential *pcpc,
1940 DWORD dwFieldID,
1941 HBITMAP hbmp);
1942
1943 HRESULT (STDMETHODCALLTYPE *SetFieldComboBoxSelectedItem)(
1944 ICredentialProviderCredentialEvents2 *This,
1945 ICredentialProviderCredential *pcpc,
1946 DWORD dwFieldID,
1947 DWORD dwSelectedItem);
1948
1949 HRESULT (STDMETHODCALLTYPE *DeleteFieldComboBoxItem)(
1950 ICredentialProviderCredentialEvents2 *This,
1951 ICredentialProviderCredential *pcpc,
1952 DWORD dwFieldID,
1953 DWORD dwItem);
1954
1955 HRESULT (STDMETHODCALLTYPE *AppendFieldComboBoxItem)(
1956 ICredentialProviderCredentialEvents2 *This,
1957 ICredentialProviderCredential *pcpc,
1958 DWORD dwFieldID,
1959 LPCWSTR pszItem);
1960
1961 HRESULT (STDMETHODCALLTYPE *SetFieldSubmitButton)(
1962 ICredentialProviderCredentialEvents2 *This,
1963 ICredentialProviderCredential *pcpc,
1964 DWORD dwFieldID,
1965 DWORD dwAdjacentTo);
1966
1967 HRESULT (STDMETHODCALLTYPE *OnCreatingWindow)(
1968 ICredentialProviderCredentialEvents2 *This,
1969 HWND *phwndOwner);
1970
1971 /*** ICredentialProviderCredentialEvents2 methods ***/
1972 HRESULT (STDMETHODCALLTYPE *BeginFieldUpdates)(
1973 ICredentialProviderCredentialEvents2 *This);
1974
1975 HRESULT (STDMETHODCALLTYPE *EndFieldUpdates)(
1976 ICredentialProviderCredentialEvents2 *This);
1977
1978 HRESULT (STDMETHODCALLTYPE *SetFieldOptions)(
1979 ICredentialProviderCredentialEvents2 *This,
1980 ICredentialProviderCredential *credential,
1981 DWORD fieldID,
1982 CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS options);
1983
1984 END_INTERFACE
1985} ICredentialProviderCredentialEvents2Vtbl;
1986
1987interface ICredentialProviderCredentialEvents2 {
1988 CONST_VTBL ICredentialProviderCredentialEvents2Vtbl* lpVtbl;
1989};
1990
1991#ifdef COBJMACROS
1992#ifndef WIDL_C_INLINE_WRAPPERS
1993/*** IUnknown methods ***/
1994#define ICredentialProviderCredentialEvents2_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
1995#define ICredentialProviderCredentialEvents2_AddRef(This) (This)->lpVtbl->AddRef(This)
1996#define ICredentialProviderCredentialEvents2_Release(This) (This)->lpVtbl->Release(This)
1997/*** ICredentialProviderCredentialEvents methods ***/
1998#define ICredentialProviderCredentialEvents2_SetFieldState(This,pcpc,dwFieldID,cpfs) (This)->lpVtbl->SetFieldState(This,pcpc,dwFieldID,cpfs)
1999#define ICredentialProviderCredentialEvents2_SetFieldInteractiveState(This,pcpc,dwFieldID,cpfis) (This)->lpVtbl->SetFieldInteractiveState(This,pcpc,dwFieldID,cpfis)
2000#define ICredentialProviderCredentialEvents2_SetFieldString(This,pcpc,dwFieldID,psz) (This)->lpVtbl->SetFieldString(This,pcpc,dwFieldID,psz)
2001#define ICredentialProviderCredentialEvents2_SetFieldCheckbox(This,pcpc,dwFieldID,bChecked,pszLabel) (This)->lpVtbl->SetFieldCheckbox(This,pcpc,dwFieldID,bChecked,pszLabel)
2002#define ICredentialProviderCredentialEvents2_SetFieldBitmap(This,pcpc,dwFieldID,hbmp) (This)->lpVtbl->SetFieldBitmap(This,pcpc,dwFieldID,hbmp)
2003#define ICredentialProviderCredentialEvents2_SetFieldComboBoxSelectedItem(This,pcpc,dwFieldID,dwSelectedItem) (This)->lpVtbl->SetFieldComboBoxSelectedItem(This,pcpc,dwFieldID,dwSelectedItem)
2004#define ICredentialProviderCredentialEvents2_DeleteFieldComboBoxItem(This,pcpc,dwFieldID,dwItem) (This)->lpVtbl->DeleteFieldComboBoxItem(This,pcpc,dwFieldID,dwItem)
2005#define ICredentialProviderCredentialEvents2_AppendFieldComboBoxItem(This,pcpc,dwFieldID,pszItem) (This)->lpVtbl->AppendFieldComboBoxItem(This,pcpc,dwFieldID,pszItem)
2006#define ICredentialProviderCredentialEvents2_SetFieldSubmitButton(This,pcpc,dwFieldID,dwAdjacentTo) (This)->lpVtbl->SetFieldSubmitButton(This,pcpc,dwFieldID,dwAdjacentTo)
2007#define ICredentialProviderCredentialEvents2_OnCreatingWindow(This,phwndOwner) (This)->lpVtbl->OnCreatingWindow(This,phwndOwner)
2008/*** ICredentialProviderCredentialEvents2 methods ***/
2009#define ICredentialProviderCredentialEvents2_BeginFieldUpdates(This) (This)->lpVtbl->BeginFieldUpdates(This)
2010#define ICredentialProviderCredentialEvents2_EndFieldUpdates(This) (This)->lpVtbl->EndFieldUpdates(This)
2011#define ICredentialProviderCredentialEvents2_SetFieldOptions(This,credential,fieldID,options) (This)->lpVtbl->SetFieldOptions(This,credential,fieldID,options)
2012#else
2013/*** IUnknown methods ***/
2014static inline HRESULT ICredentialProviderCredentialEvents2_QueryInterface(ICredentialProviderCredentialEvents2* This,REFIID riid,void **ppvObject) {
2015 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2016}
2017static inline ULONG ICredentialProviderCredentialEvents2_AddRef(ICredentialProviderCredentialEvents2* This) {
2018 return This->lpVtbl->AddRef(This);
2019}
2020static inline ULONG ICredentialProviderCredentialEvents2_Release(ICredentialProviderCredentialEvents2* This) {
2021 return This->lpVtbl->Release(This);
2022}
2023/*** ICredentialProviderCredentialEvents methods ***/
2024static inline HRESULT ICredentialProviderCredentialEvents2_SetFieldState(ICredentialProviderCredentialEvents2* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,CREDENTIAL_PROVIDER_FIELD_STATE cpfs) {
2025 return This->lpVtbl->SetFieldState(This,pcpc,dwFieldID,cpfs);
2026}
2027static inline HRESULT ICredentialProviderCredentialEvents2_SetFieldInteractiveState(ICredentialProviderCredentialEvents2* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,CREDENTIAL_PROVIDER_FIELD_INTERACTIVE_STATE cpfis) {
2028 return This->lpVtbl->SetFieldInteractiveState(This,pcpc,dwFieldID,cpfis);
2029}
2030static inline HRESULT ICredentialProviderCredentialEvents2_SetFieldString(ICredentialProviderCredentialEvents2* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,LPCWSTR psz) {
2031 return This->lpVtbl->SetFieldString(This,pcpc,dwFieldID,psz);
2032}
2033static inline HRESULT ICredentialProviderCredentialEvents2_SetFieldCheckbox(ICredentialProviderCredentialEvents2* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,WINBOOL bChecked,LPCWSTR pszLabel) {
2034 return This->lpVtbl->SetFieldCheckbox(This,pcpc,dwFieldID,bChecked,pszLabel);
2035}
2036static inline HRESULT ICredentialProviderCredentialEvents2_SetFieldBitmap(ICredentialProviderCredentialEvents2* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,HBITMAP hbmp) {
2037 return This->lpVtbl->SetFieldBitmap(This,pcpc,dwFieldID,hbmp);
2038}
2039static inline HRESULT ICredentialProviderCredentialEvents2_SetFieldComboBoxSelectedItem(ICredentialProviderCredentialEvents2* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,DWORD dwSelectedItem) {
2040 return This->lpVtbl->SetFieldComboBoxSelectedItem(This,pcpc,dwFieldID,dwSelectedItem);
2041}
2042static inline HRESULT ICredentialProviderCredentialEvents2_DeleteFieldComboBoxItem(ICredentialProviderCredentialEvents2* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,DWORD dwItem) {
2043 return This->lpVtbl->DeleteFieldComboBoxItem(This,pcpc,dwFieldID,dwItem);
2044}
2045static inline HRESULT ICredentialProviderCredentialEvents2_AppendFieldComboBoxItem(ICredentialProviderCredentialEvents2* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,LPCWSTR pszItem) {
2046 return This->lpVtbl->AppendFieldComboBoxItem(This,pcpc,dwFieldID,pszItem);
2047}
2048static inline HRESULT ICredentialProviderCredentialEvents2_SetFieldSubmitButton(ICredentialProviderCredentialEvents2* This,ICredentialProviderCredential *pcpc,DWORD dwFieldID,DWORD dwAdjacentTo) {
2049 return This->lpVtbl->SetFieldSubmitButton(This,pcpc,dwFieldID,dwAdjacentTo);
2050}
2051static inline HRESULT ICredentialProviderCredentialEvents2_OnCreatingWindow(ICredentialProviderCredentialEvents2* This,HWND *phwndOwner) {
2052 return This->lpVtbl->OnCreatingWindow(This,phwndOwner);
2053}
2054/*** ICredentialProviderCredentialEvents2 methods ***/
2055static inline HRESULT ICredentialProviderCredentialEvents2_BeginFieldUpdates(ICredentialProviderCredentialEvents2* This) {
2056 return This->lpVtbl->BeginFieldUpdates(This);
2057}
2058static inline HRESULT ICredentialProviderCredentialEvents2_EndFieldUpdates(ICredentialProviderCredentialEvents2* This) {
2059 return This->lpVtbl->EndFieldUpdates(This);
2060}
2061static inline HRESULT ICredentialProviderCredentialEvents2_SetFieldOptions(ICredentialProviderCredentialEvents2* This,ICredentialProviderCredential *credential,DWORD fieldID,CREDENTIAL_PROVIDER_CREDENTIAL_FIELD_OPTIONS options) {
2062 return This->lpVtbl->SetFieldOptions(This,credential,fieldID,options);
2063}
2064#endif
2065#endif
2066
2067#endif
2068
2069
2070#endif /* __ICredentialProviderCredentialEvents2_INTERFACE_DEFINED__ */
2071
2072/*****************************************************************************
2073 * ICredentialProviderUser interface
2074 */
2075#ifndef __ICredentialProviderUser_INTERFACE_DEFINED__
2076#define __ICredentialProviderUser_INTERFACE_DEFINED__
2077
2078DEFINE_GUID(IID_ICredentialProviderUser, 0x13793285, 0x3ea6, 0x40fd, 0xb4,0x20, 0x15,0xf4,0x7d,0xa4,0x1f,0xbb);
2079#if defined(__cplusplus) && !defined(CINTERFACE)
2080MIDL_INTERFACE("13793285-3ea6-40fd-b420-15f47da41fbb")
2081ICredentialProviderUser : public IUnknown
2082{
2083 virtual HRESULT STDMETHODCALLTYPE GetSid(
2084 LPWSTR *sid) = 0;
2085
2086 virtual HRESULT STDMETHODCALLTYPE GetProviderID(
2087 GUID *providerID) = 0;
2088
2089 virtual HRESULT STDMETHODCALLTYPE GetStringValue(
2090 REFPROPERTYKEY key,
2091 LPWSTR *stringValue) = 0;
2092
2093 virtual HRESULT STDMETHODCALLTYPE GetValue(
2094 REFPROPERTYKEY key,
2095 PROPVARIANT *value) = 0;
2096
2097};
2098#ifdef __CRT_UUID_DECL
2099__CRT_UUID_DECL(ICredentialProviderUser, 0x13793285, 0x3ea6, 0x40fd, 0xb4,0x20, 0x15,0xf4,0x7d,0xa4,0x1f,0xbb)
2100#endif
2101#else
2102typedef struct ICredentialProviderUserVtbl {
2103 BEGIN_INTERFACE
2104
2105 /*** IUnknown methods ***/
2106 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2107 ICredentialProviderUser *This,
2108 REFIID riid,
2109 void **ppvObject);
2110
2111 ULONG (STDMETHODCALLTYPE *AddRef)(
2112 ICredentialProviderUser *This);
2113
2114 ULONG (STDMETHODCALLTYPE *Release)(
2115 ICredentialProviderUser *This);
2116
2117 /*** ICredentialProviderUser methods ***/
2118 HRESULT (STDMETHODCALLTYPE *GetSid)(
2119 ICredentialProviderUser *This,
2120 LPWSTR *sid);
2121
2122 HRESULT (STDMETHODCALLTYPE *GetProviderID)(
2123 ICredentialProviderUser *This,
2124 GUID *providerID);
2125
2126 HRESULT (STDMETHODCALLTYPE *GetStringValue)(
2127 ICredentialProviderUser *This,
2128 REFPROPERTYKEY key,
2129 LPWSTR *stringValue);
2130
2131 HRESULT (STDMETHODCALLTYPE *GetValue)(
2132 ICredentialProviderUser *This,
2133 REFPROPERTYKEY key,
2134 PROPVARIANT *value);
2135
2136 END_INTERFACE
2137} ICredentialProviderUserVtbl;
2138
2139interface ICredentialProviderUser {
2140 CONST_VTBL ICredentialProviderUserVtbl* lpVtbl;
2141};
2142
2143#ifdef COBJMACROS
2144#ifndef WIDL_C_INLINE_WRAPPERS
2145/*** IUnknown methods ***/
2146#define ICredentialProviderUser_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2147#define ICredentialProviderUser_AddRef(This) (This)->lpVtbl->AddRef(This)
2148#define ICredentialProviderUser_Release(This) (This)->lpVtbl->Release(This)
2149/*** ICredentialProviderUser methods ***/
2150#define ICredentialProviderUser_GetSid(This,sid) (This)->lpVtbl->GetSid(This,sid)
2151#define ICredentialProviderUser_GetProviderID(This,providerID) (This)->lpVtbl->GetProviderID(This,providerID)
2152#define ICredentialProviderUser_GetStringValue(This,key,stringValue) (This)->lpVtbl->GetStringValue(This,key,stringValue)
2153#define ICredentialProviderUser_GetValue(This,key,value) (This)->lpVtbl->GetValue(This,key,value)
2154#else
2155/*** IUnknown methods ***/
2156static inline HRESULT ICredentialProviderUser_QueryInterface(ICredentialProviderUser* This,REFIID riid,void **ppvObject) {
2157 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2158}
2159static inline ULONG ICredentialProviderUser_AddRef(ICredentialProviderUser* This) {
2160 return This->lpVtbl->AddRef(This);
2161}
2162static inline ULONG ICredentialProviderUser_Release(ICredentialProviderUser* This) {
2163 return This->lpVtbl->Release(This);
2164}
2165/*** ICredentialProviderUser methods ***/
2166static inline HRESULT ICredentialProviderUser_GetSid(ICredentialProviderUser* This,LPWSTR *sid) {
2167 return This->lpVtbl->GetSid(This,sid);
2168}
2169static inline HRESULT ICredentialProviderUser_GetProviderID(ICredentialProviderUser* This,GUID *providerID) {
2170 return This->lpVtbl->GetProviderID(This,providerID);
2171}
2172static inline HRESULT ICredentialProviderUser_GetStringValue(ICredentialProviderUser* This,REFPROPERTYKEY key,LPWSTR *stringValue) {
2173 return This->lpVtbl->GetStringValue(This,key,stringValue);
2174}
2175static inline HRESULT ICredentialProviderUser_GetValue(ICredentialProviderUser* This,REFPROPERTYKEY key,PROPVARIANT *value) {
2176 return This->lpVtbl->GetValue(This,key,value);
2177}
2178#endif
2179#endif
2180
2181#endif
2182
2183
2184#endif /* __ICredentialProviderUser_INTERFACE_DEFINED__ */
2185
2186DEFINE_GUID(Identity_LocalUserProvider, 0xA198529B, 0x730F, 0x4089, 0xB6, 0x46, 0xA1, 0x25, 0x57, 0xF5, 0x66, 0x5E);
2187/*****************************************************************************
2188 * ICredentialProviderUserArray interface
2189 */
2190#ifndef __ICredentialProviderUserArray_INTERFACE_DEFINED__
2191#define __ICredentialProviderUserArray_INTERFACE_DEFINED__
2192
2193DEFINE_GUID(IID_ICredentialProviderUserArray, 0x90c119ae, 0x0f18, 0x4520, 0xa1,0xf1, 0x11,0x43,0x66,0xa4,0x0f,0xe8);
2194#if defined(__cplusplus) && !defined(CINTERFACE)
2195MIDL_INTERFACE("90c119ae-0f18-4520-a1f1-114366a40fe8")
2196ICredentialProviderUserArray : public IUnknown
2197{
2198 virtual HRESULT STDMETHODCALLTYPE SetProviderFilter(
2199 REFGUID guidProviderToFilterTo) = 0;
2200
2201 virtual HRESULT STDMETHODCALLTYPE GetAccountOptions(
2202 CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS *credentialProviderAccountOptions) = 0;
2203
2204 virtual HRESULT STDMETHODCALLTYPE GetCount(
2205 DWORD *userCount) = 0;
2206
2207 virtual HRESULT STDMETHODCALLTYPE GetAt(
2208 DWORD userIndex,
2209 ICredentialProviderUser **user) = 0;
2210
2211};
2212#ifdef __CRT_UUID_DECL
2213__CRT_UUID_DECL(ICredentialProviderUserArray, 0x90c119ae, 0x0f18, 0x4520, 0xa1,0xf1, 0x11,0x43,0x66,0xa4,0x0f,0xe8)
2214#endif
2215#else
2216typedef struct ICredentialProviderUserArrayVtbl {
2217 BEGIN_INTERFACE
2218
2219 /*** IUnknown methods ***/
2220 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2221 ICredentialProviderUserArray *This,
2222 REFIID riid,
2223 void **ppvObject);
2224
2225 ULONG (STDMETHODCALLTYPE *AddRef)(
2226 ICredentialProviderUserArray *This);
2227
2228 ULONG (STDMETHODCALLTYPE *Release)(
2229 ICredentialProviderUserArray *This);
2230
2231 /*** ICredentialProviderUserArray methods ***/
2232 HRESULT (STDMETHODCALLTYPE *SetProviderFilter)(
2233 ICredentialProviderUserArray *This,
2234 REFGUID guidProviderToFilterTo);
2235
2236 HRESULT (STDMETHODCALLTYPE *GetAccountOptions)(
2237 ICredentialProviderUserArray *This,
2238 CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS *credentialProviderAccountOptions);
2239
2240 HRESULT (STDMETHODCALLTYPE *GetCount)(
2241 ICredentialProviderUserArray *This,
2242 DWORD *userCount);
2243
2244 HRESULT (STDMETHODCALLTYPE *GetAt)(
2245 ICredentialProviderUserArray *This,
2246 DWORD userIndex,
2247 ICredentialProviderUser **user);
2248
2249 END_INTERFACE
2250} ICredentialProviderUserArrayVtbl;
2251
2252interface ICredentialProviderUserArray {
2253 CONST_VTBL ICredentialProviderUserArrayVtbl* lpVtbl;
2254};
2255
2256#ifdef COBJMACROS
2257#ifndef WIDL_C_INLINE_WRAPPERS
2258/*** IUnknown methods ***/
2259#define ICredentialProviderUserArray_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2260#define ICredentialProviderUserArray_AddRef(This) (This)->lpVtbl->AddRef(This)
2261#define ICredentialProviderUserArray_Release(This) (This)->lpVtbl->Release(This)
2262/*** ICredentialProviderUserArray methods ***/
2263#define ICredentialProviderUserArray_SetProviderFilter(This,guidProviderToFilterTo) (This)->lpVtbl->SetProviderFilter(This,guidProviderToFilterTo)
2264#define ICredentialProviderUserArray_GetAccountOptions(This,credentialProviderAccountOptions) (This)->lpVtbl->GetAccountOptions(This,credentialProviderAccountOptions)
2265#define ICredentialProviderUserArray_GetCount(This,userCount) (This)->lpVtbl->GetCount(This,userCount)
2266#define ICredentialProviderUserArray_GetAt(This,userIndex,user) (This)->lpVtbl->GetAt(This,userIndex,user)
2267#else
2268/*** IUnknown methods ***/
2269static inline HRESULT ICredentialProviderUserArray_QueryInterface(ICredentialProviderUserArray* This,REFIID riid,void **ppvObject) {
2270 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2271}
2272static inline ULONG ICredentialProviderUserArray_AddRef(ICredentialProviderUserArray* This) {
2273 return This->lpVtbl->AddRef(This);
2274}
2275static inline ULONG ICredentialProviderUserArray_Release(ICredentialProviderUserArray* This) {
2276 return This->lpVtbl->Release(This);
2277}
2278/*** ICredentialProviderUserArray methods ***/
2279static inline HRESULT ICredentialProviderUserArray_SetProviderFilter(ICredentialProviderUserArray* This,REFGUID guidProviderToFilterTo) {
2280 return This->lpVtbl->SetProviderFilter(This,guidProviderToFilterTo);
2281}
2282static inline HRESULT ICredentialProviderUserArray_GetAccountOptions(ICredentialProviderUserArray* This,CREDENTIAL_PROVIDER_ACCOUNT_OPTIONS *credentialProviderAccountOptions) {
2283 return This->lpVtbl->GetAccountOptions(This,credentialProviderAccountOptions);
2284}
2285static inline HRESULT ICredentialProviderUserArray_GetCount(ICredentialProviderUserArray* This,DWORD *userCount) {
2286 return This->lpVtbl->GetCount(This,userCount);
2287}
2288static inline HRESULT ICredentialProviderUserArray_GetAt(ICredentialProviderUserArray* This,DWORD userIndex,ICredentialProviderUser **user) {
2289 return This->lpVtbl->GetAt(This,userIndex,user);
2290}
2291#endif
2292#endif
2293
2294#endif
2295
2296
2297#endif /* __ICredentialProviderUserArray_INTERFACE_DEFINED__ */
2298
2299/*****************************************************************************
2300 * ICredentialProviderSetUserArray interface
2301 */
2302#ifndef __ICredentialProviderSetUserArray_INTERFACE_DEFINED__
2303#define __ICredentialProviderSetUserArray_INTERFACE_DEFINED__
2304
2305DEFINE_GUID(IID_ICredentialProviderSetUserArray, 0x095c1484, 0x1c0c, 0x4388, 0x9c,0x6d, 0x50,0x0e,0x61,0xbf,0x84,0xbd);
2306#if defined(__cplusplus) && !defined(CINTERFACE)
2307MIDL_INTERFACE("095c1484-1c0c-4388-9c6d-500e61bf84bd")
2308ICredentialProviderSetUserArray : public IUnknown
2309{
2310 virtual HRESULT STDMETHODCALLTYPE SetUserArray(
2311 ICredentialProviderUserArray *users) = 0;
2312
2313};
2314#ifdef __CRT_UUID_DECL
2315__CRT_UUID_DECL(ICredentialProviderSetUserArray, 0x095c1484, 0x1c0c, 0x4388, 0x9c,0x6d, 0x50,0x0e,0x61,0xbf,0x84,0xbd)
2316#endif
2317#else
2318typedef struct ICredentialProviderSetUserArrayVtbl {
2319 BEGIN_INTERFACE
2320
2321 /*** IUnknown methods ***/
2322 HRESULT (STDMETHODCALLTYPE *QueryInterface)(
2323 ICredentialProviderSetUserArray *This,
2324 REFIID riid,
2325 void **ppvObject);
2326
2327 ULONG (STDMETHODCALLTYPE *AddRef)(
2328 ICredentialProviderSetUserArray *This);
2329
2330 ULONG (STDMETHODCALLTYPE *Release)(
2331 ICredentialProviderSetUserArray *This);
2332
2333 /*** ICredentialProviderSetUserArray methods ***/
2334 HRESULT (STDMETHODCALLTYPE *SetUserArray)(
2335 ICredentialProviderSetUserArray *This,
2336 ICredentialProviderUserArray *users);
2337
2338 END_INTERFACE
2339} ICredentialProviderSetUserArrayVtbl;
2340
2341interface ICredentialProviderSetUserArray {
2342 CONST_VTBL ICredentialProviderSetUserArrayVtbl* lpVtbl;
2343};
2344
2345#ifdef COBJMACROS
2346#ifndef WIDL_C_INLINE_WRAPPERS
2347/*** IUnknown methods ***/
2348#define ICredentialProviderSetUserArray_QueryInterface(This,riid,ppvObject) (This)->lpVtbl->QueryInterface(This,riid,ppvObject)
2349#define ICredentialProviderSetUserArray_AddRef(This) (This)->lpVtbl->AddRef(This)
2350#define ICredentialProviderSetUserArray_Release(This) (This)->lpVtbl->Release(This)
2351/*** ICredentialProviderSetUserArray methods ***/
2352#define ICredentialProviderSetUserArray_SetUserArray(This,users) (This)->lpVtbl->SetUserArray(This,users)
2353#else
2354/*** IUnknown methods ***/
2355static inline HRESULT ICredentialProviderSetUserArray_QueryInterface(ICredentialProviderSetUserArray* This,REFIID riid,void **ppvObject) {
2356 return This->lpVtbl->QueryInterface(This,riid,ppvObject);
2357}
2358static inline ULONG ICredentialProviderSetUserArray_AddRef(ICredentialProviderSetUserArray* This) {
2359 return This->lpVtbl->AddRef(This);
2360}
2361static inline ULONG ICredentialProviderSetUserArray_Release(ICredentialProviderSetUserArray* This) {
2362 return This->lpVtbl->Release(This);
2363}
2364/*** ICredentialProviderSetUserArray methods ***/
2365static inline HRESULT ICredentialProviderSetUserArray_SetUserArray(ICredentialProviderSetUserArray* This,ICredentialProviderUserArray *users) {
2366 return This->lpVtbl->SetUserArray(This,users);
2367}
2368#endif
2369#endif
2370
2371#endif
2372
2373
2374#endif /* __ICredentialProviderSetUserArray_INTERFACE_DEFINED__ */
2375
2376#endif /* (NTDDI_VERSION >= NTDDI_WIN8) */
2377#ifndef __CredentialProviders_LIBRARY_DEFINED__
2378#define __CredentialProviders_LIBRARY_DEFINED__
2379
2380DEFINE_GUID(LIBID_CredentialProviders, 0xd545db01, 0xe522, 0x4a63, 0xaf,0x83, 0xd8,0xdd,0xf9,0x54,0x00,0x4f);
2381
2382/*****************************************************************************
2383 * PasswordCredentialProvider coclass
2384 */
2385
2386DEFINE_GUID(CLSID_PasswordCredentialProvider, 0x60b78e88, 0xead8, 0x445c, 0x9c,0xfd, 0x0b,0x87,0xf7,0x4e,0xa6,0xcd);
2387
2388#ifdef __cplusplus
2389class DECLSPEC_UUID("60b78e88-ead8-445c-9cfd-0b87f74ea6cd") PasswordCredentialProvider;
2390#ifdef __CRT_UUID_DECL
2391__CRT_UUID_DECL(PasswordCredentialProvider, 0x60b78e88, 0xead8, 0x445c, 0x9c,0xfd, 0x0b,0x87,0xf7,0x4e,0xa6,0xcd)
2392#endif
2393#endif
2394
2395/*****************************************************************************
2396 * V1PasswordCredentialProvider coclass
2397 */
2398
2399DEFINE_GUID(CLSID_V1PasswordCredentialProvider, 0x6f45dc1e, 0x5384, 0x457a, 0xbc,0x13, 0x2c,0xd8,0x1b,0x0d,0x28,0xed);
2400
2401#ifdef __cplusplus
2402class DECLSPEC_UUID("6f45dc1e-5384-457a-bc13-2cd81b0d28ed") V1PasswordCredentialProvider;
2403#ifdef __CRT_UUID_DECL
2404__CRT_UUID_DECL(V1PasswordCredentialProvider, 0x6f45dc1e, 0x5384, 0x457a, 0xbc,0x13, 0x2c,0xd8,0x1b,0x0d,0x28,0xed)
2405#endif
2406#endif
2407
2408/*****************************************************************************
2409 * PINLogonCredentialProvider coclass
2410 */
2411
2412DEFINE_GUID(CLSID_PINLogonCredentialProvider, 0xcb82ea12, 0x9f71, 0x446d, 0x89,0xe1, 0x8d,0x09,0x24,0xe1,0x25,0x6e);
2413
2414#ifdef __cplusplus
2415class DECLSPEC_UUID("cb82ea12-9f71-446d-89e1-8d0924e1256e") PINLogonCredentialProvider;
2416#ifdef __CRT_UUID_DECL
2417__CRT_UUID_DECL(PINLogonCredentialProvider, 0xcb82ea12, 0x9f71, 0x446d, 0x89,0xe1, 0x8d,0x09,0x24,0xe1,0x25,0x6e)
2418#endif
2419#endif
2420
2421/*****************************************************************************
2422 * NPCredentialProvider coclass
2423 */
2424
2425DEFINE_GUID(CLSID_NPCredentialProvider, 0x3dd6bec0, 0x8193, 0x4ffe, 0xae,0x25, 0xe0,0x8e,0x39,0xea,0x40,0x63);
2426
2427#ifdef __cplusplus
2428class DECLSPEC_UUID("3dd6bec0-8193-4ffe-ae25-e08e39ea4063") NPCredentialProvider;
2429#ifdef __CRT_UUID_DECL
2430__CRT_UUID_DECL(NPCredentialProvider, 0x3dd6bec0, 0x8193, 0x4ffe, 0xae,0x25, 0xe0,0x8e,0x39,0xea,0x40,0x63)
2431#endif
2432#endif
2433
2434/*****************************************************************************
2435 * SmartcardCredentialProvider coclass
2436 */
2437
2438DEFINE_GUID(CLSID_SmartcardCredentialProvider, 0x8fd7e19c, 0x3bf7, 0x489b, 0xa7,0x2c, 0x84,0x6a,0xb3,0x67,0x8c,0x96);
2439
2440#ifdef __cplusplus
2441class DECLSPEC_UUID("8fd7e19c-3bf7-489b-a72c-846ab3678c96") SmartcardCredentialProvider;
2442#ifdef __CRT_UUID_DECL
2443__CRT_UUID_DECL(SmartcardCredentialProvider, 0x8fd7e19c, 0x3bf7, 0x489b, 0xa7,0x2c, 0x84,0x6a,0xb3,0x67,0x8c,0x96)
2444#endif
2445#endif
2446
2447/*****************************************************************************
2448 * V1SmartcardCredentialProvider coclass
2449 */
2450
2451DEFINE_GUID(CLSID_V1SmartcardCredentialProvider, 0x8bf9a910, 0xa8ff, 0x457f, 0x99,0x9f, 0xa5,0xca,0x10,0xb4,0xa8,0x85);
2452
2453#ifdef __cplusplus
2454class DECLSPEC_UUID("8bf9a910-a8ff-457f-999f-a5ca10b4a885") V1SmartcardCredentialProvider;
2455#ifdef __CRT_UUID_DECL
2456__CRT_UUID_DECL(V1SmartcardCredentialProvider, 0x8bf9a910, 0xa8ff, 0x457f, 0x99,0x9f, 0xa5,0xca,0x10,0xb4,0xa8,0x85)
2457#endif
2458#endif
2459
2460/*****************************************************************************
2461 * SmartcardPinProvider coclass
2462 */
2463
2464DEFINE_GUID(CLSID_SmartcardPinProvider, 0x94596c7e, 0x3744, 0x41ce, 0x89,0x3e, 0xbb,0xf0,0x91,0x22,0xf7,0x6a);
2465
2466#ifdef __cplusplus
2467class DECLSPEC_UUID("94596c7e-3744-41ce-893e-bbf09122f76a") SmartcardPinProvider;
2468#ifdef __CRT_UUID_DECL
2469__CRT_UUID_DECL(SmartcardPinProvider, 0x94596c7e, 0x3744, 0x41ce, 0x89,0x3e, 0xbb,0xf0,0x91,0x22,0xf7,0x6a)
2470#endif
2471#endif
2472
2473/*****************************************************************************
2474 * SmartcardReaderSelectionProvider coclass
2475 */
2476
2477DEFINE_GUID(CLSID_SmartcardReaderSelectionProvider, 0x1b283861, 0x754f, 0x4022, 0xad,0x47, 0xa5,0xea,0xaa,0x61,0x88,0x94);
2478
2479#ifdef __cplusplus
2480class DECLSPEC_UUID("1b283861-754f-4022-ad47-a5eaaa618894") SmartcardReaderSelectionProvider;
2481#ifdef __CRT_UUID_DECL
2482__CRT_UUID_DECL(SmartcardReaderSelectionProvider, 0x1b283861, 0x754f, 0x4022, 0xad,0x47, 0xa5,0xea,0xaa,0x61,0x88,0x94)
2483#endif
2484#endif
2485
2486/*****************************************************************************
2487 * SmartcardWinRTProvider coclass
2488 */
2489
2490DEFINE_GUID(CLSID_SmartcardWinRTProvider, 0x1ee7337f, 0x85ac, 0x45e2, 0xa2,0x3c, 0x37,0xc7,0x53,0x20,0x97,0x69);
2491
2492#ifdef __cplusplus
2493class DECLSPEC_UUID("1ee7337f-85ac-45e2-a23c-37c753209769") SmartcardWinRTProvider;
2494#ifdef __CRT_UUID_DECL
2495__CRT_UUID_DECL(SmartcardWinRTProvider, 0x1ee7337f, 0x85ac, 0x45e2, 0xa2,0x3c, 0x37,0xc7,0x53,0x20,0x97,0x69)
2496#endif
2497#endif
2498
2499/*****************************************************************************
2500 * GenericCredentialProvider coclass
2501 */
2502
2503DEFINE_GUID(CLSID_GenericCredentialProvider, 0x25cbb996, 0x92ed, 0x457e, 0xb2,0x8c, 0x47,0x74,0x08,0x4b,0xd5,0x62);
2504
2505#ifdef __cplusplus
2506class DECLSPEC_UUID("25cbb996-92ed-457e-b28c-4774084bd562") GenericCredentialProvider;
2507#ifdef __CRT_UUID_DECL
2508__CRT_UUID_DECL(GenericCredentialProvider, 0x25cbb996, 0x92ed, 0x457e, 0xb2,0x8c, 0x47,0x74,0x08,0x4b,0xd5,0x62)
2509#endif
2510#endif
2511
2512/*****************************************************************************
2513 * RASProvider coclass
2514 */
2515
2516DEFINE_GUID(CLSID_RASProvider, 0x5537e283, 0xb1e7, 0x4ef8, 0x9c,0x6e, 0x7a,0xb0,0xaf,0xe5,0x05,0x6d);
2517
2518#ifdef __cplusplus
2519class DECLSPEC_UUID("5537e283-b1e7-4ef8-9c6e-7ab0afe5056d") RASProvider;
2520#ifdef __CRT_UUID_DECL
2521__CRT_UUID_DECL(RASProvider, 0x5537e283, 0xb1e7, 0x4ef8, 0x9c,0x6e, 0x7a,0xb0,0xaf,0xe5,0x05,0x6d)
2522#endif
2523#endif
2524
2525/*****************************************************************************
2526 * OnexCredentialProvider coclass
2527 */
2528
2529DEFINE_GUID(CLSID_OnexCredentialProvider, 0x07aa0886, 0xcc8d, 0x4e19, 0xa4,0x10, 0x1c,0x75,0xaf,0x68,0x6e,0x62);
2530
2531#ifdef __cplusplus
2532class DECLSPEC_UUID("07aa0886-cc8d-4e19-a410-1c75af686e62") OnexCredentialProvider;
2533#ifdef __CRT_UUID_DECL
2534__CRT_UUID_DECL(OnexCredentialProvider, 0x07aa0886, 0xcc8d, 0x4e19, 0xa4,0x10, 0x1c,0x75,0xaf,0x68,0x6e,0x62)
2535#endif
2536#endif
2537
2538/*****************************************************************************
2539 * OnexPlapSmartcardCredentialProvider coclass
2540 */
2541
2542DEFINE_GUID(CLSID_OnexPlapSmartcardCredentialProvider, 0x33c86cd6, 0x705f, 0x4ba1, 0x9a,0xdb, 0x67,0x07,0x0b,0x83,0x77,0x75);
2543
2544#ifdef __cplusplus
2545class DECLSPEC_UUID("33c86cd6-705f-4ba1-9adb-67070b837775") OnexPlapSmartcardCredentialProvider;
2546#ifdef __CRT_UUID_DECL
2547__CRT_UUID_DECL(OnexPlapSmartcardCredentialProvider, 0x33c86cd6, 0x705f, 0x4ba1, 0x9a,0xdb, 0x67,0x07,0x0b,0x83,0x77,0x75)
2548#endif
2549#endif
2550
2551/*****************************************************************************
2552 * VaultProvider coclass
2553 */
2554
2555DEFINE_GUID(CLSID_VaultProvider, 0x503739d0, 0x4c5e, 0x4cfd, 0xb3,0xba, 0xd8,0x81,0x33,0x4f,0x0d,0xf2);
2556
2557#ifdef __cplusplus
2558class DECLSPEC_UUID("503739d0-4c5e-4cfd-b3ba-d881334f0df2") VaultProvider;
2559#ifdef __CRT_UUID_DECL
2560__CRT_UUID_DECL(VaultProvider, 0x503739d0, 0x4c5e, 0x4cfd, 0xb3,0xba, 0xd8,0x81,0x33,0x4f,0x0d,0xf2)
2561#endif
2562#endif
2563
2564/*****************************************************************************
2565 * WinBioCredentialProvider coclass
2566 */
2567
2568DEFINE_GUID(CLSID_WinBioCredentialProvider, 0xbec09223, 0xb018, 0x416d, 0xa0,0xac, 0x52,0x39,0x71,0xb6,0x39,0xf5);
2569
2570#ifdef __cplusplus
2571class DECLSPEC_UUID("bec09223-b018-416d-a0ac-523971b639f5") WinBioCredentialProvider;
2572#ifdef __CRT_UUID_DECL
2573__CRT_UUID_DECL(WinBioCredentialProvider, 0xbec09223, 0xb018, 0x416d, 0xa0,0xac, 0x52,0x39,0x71,0xb6,0x39,0xf5)
2574#endif
2575#endif
2576
2577/*****************************************************************************
2578 * V1WinBioCredentialProvider coclass
2579 */
2580
2581DEFINE_GUID(CLSID_V1WinBioCredentialProvider, 0xac3ac249, 0xe820, 0x4343, 0xa6,0x5b, 0x37,0x7a,0xc6,0x34,0xdc,0x09);
2582
2583#ifdef __cplusplus
2584class DECLSPEC_UUID("ac3ac249-e820-4343-a65b-377ac634dc09") V1WinBioCredentialProvider;
2585#ifdef __CRT_UUID_DECL
2586__CRT_UUID_DECL(V1WinBioCredentialProvider, 0xac3ac249, 0xe820, 0x4343, 0xa6,0x5b, 0x37,0x7a,0xc6,0x34,0xdc,0x09)
2587#endif
2588#endif
2589
2590#endif /* __CredentialProviders_LIBRARY_DEFINED__ */
2591#endif /* WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP) */
2592/* Begin additional prototypes for all interfaces */
2593
2594ULONG __RPC_USER HBITMAP_UserSize (ULONG *, ULONG, HBITMAP *);
2595unsigned char * __RPC_USER HBITMAP_UserMarshal (ULONG *, unsigned char *, HBITMAP *);
2596unsigned char * __RPC_USER HBITMAP_UserUnmarshal(ULONG *, unsigned char *, HBITMAP *);
2597void __RPC_USER HBITMAP_UserFree (ULONG *, HBITMAP *);
2598ULONG __RPC_USER HWND_UserSize (ULONG *, ULONG, HWND *);
2599unsigned char * __RPC_USER HWND_UserMarshal (ULONG *, unsigned char *, HWND *);
2600unsigned char * __RPC_USER HWND_UserUnmarshal(ULONG *, unsigned char *, HWND *);
2601void __RPC_USER HWND_UserFree (ULONG *, HWND *);
2602
2603/* End additional prototypes */
2604
2605#ifdef __cplusplus
2606}
2607#endif
2608
2609#endif /* __credentialprovider_h__ */