1/** 2 * This file has no copyright assigned and is placed in the Public Domain. 3 * This file is part of the mingw-w64 runtime package. 4 * No warranty is given; refer to the file DISCLAIMER.PD within this package. 5 */ 6#ifndef __dsquery_h 7#define __dsquery_h 8 9DEFINE_GUID(CLSID_DsQuery,0x8a23e65e,0x31c2,0x11d0,0x89,0x1c,0x0,0xa0,0x24,0xab,0x2d,0xbb); 10DEFINE_GUID(CLSID_DsFindObjects,0x83ee3fe1,0x57d9,0x11d0,0xb9,0x32,0x0,0xa0,0x24,0xab,0x2d,0xbb); 11DEFINE_GUID(CLSID_DsFindPeople,0x83ee3fe2,0x57d9,0x11d0,0xb9,0x32,0x0,0xa0,0x24,0xab,0x2d,0xbb); 12DEFINE_GUID(CLSID_DsFindPrinter,0xb577f070,0x7ee2,0x11d0,0x91,0x3f,0x0,0xaa,0x0,0xc1,0x6e,0x65); 13DEFINE_GUID(CLSID_DsFindComputer,0x16006700,0x87ad,0x11d0,0x91,0x40,0x0,0xaa,0x0,0xc1,0x6e,0x65); 14DEFINE_GUID(CLSID_DsFindVolume,0xc1b3cbf1,0x886a,0x11d0,0x91,0x40,0x0,0xaa,0x0,0xc1,0x6e,0x65); 15DEFINE_GUID(CLSID_DsFindContainer,0xc1b3cbf2,0x886a,0x11d0,0x91,0x40,0x0,0xaa,0x0,0xc1,0x6e,0x65); 16DEFINE_GUID(CLSID_DsFindAdvanced,0x83ee3fe3,0x57d9,0x11d0,0xb9,0x32,0x0,0xa0,0x24,0xab,0x2d,0xbb); 17DEFINE_GUID(CLSID_DsFindDomainController,0x538c7b7e,0xd25e,0x11d0,0x97,0x42,0x0,0xa0,0xc9,0x6,0xaf,0x45); 18DEFINE_GUID(CLSID_DsFindFrsMembers,0x94ce4b18,0xb3d3,0x11d1,0xb9,0xb4,0x0,0xc0,0x4f,0xd8,0xd5,0xb0); 19 20#ifndef GUID_DEFS_ONLY 21#define DSQPF_NOSAVE 0x00000001 22#define DSQPF_SAVELOCATION 0x00000002 23#define DSQPF_SHOWHIDDENOBJECTS 0x00000004 24#define DSQPF_ENABLEADMINFEATURES 0x00000008 25#define DSQPF_ENABLEADVANCEDFEATURES 0x00000010 26#define DSQPF_HASCREDENTIALS 0x00000020 27#define DSQPF_NOCHOOSECOLUMNS 0x00000040 28 29typedef struct { 30 DWORD cbStruct; 31 DWORD dwFlags; 32 LPWSTR pDefaultScope; 33 LPWSTR pDefaultSaveLocation; 34 LPWSTR pUserName; 35 LPWSTR pPassword; 36 LPWSTR pServer; 37} DSQUERYINITPARAMS,*LPDSQUERYINITPARAMS; 38 39#define CFSTR_DSQUERYPARAMS TEXT("DsQueryParameters") 40 41#define DSCOLUMNPROP_ADSPATH ((LONG)(-1)) 42#define DSCOLUMNPROP_OBJECTCLASS ((LONG)(-2)) 43 44typedef struct { 45 DWORD dwFlags; 46 INT fmt; 47 INT cx; 48 INT idsName; 49 LONG offsetProperty; 50 DWORD dwReserved; 51} DSCOLUMN,*LPDSCOLUMN; 52 53typedef struct { 54 DWORD cbStruct; 55 DWORD dwFlags; 56 HINSTANCE hInstance; 57 LONG offsetQuery; 58 LONG iColumns; 59 DWORD dwReserved; 60 DSCOLUMN aColumns[1]; 61} DSQUERYPARAMS,*LPDSQUERYPARAMS; 62 63#define CFSTR_DSQUERYSCOPE TEXT("DsQueryScope") 64 65typedef struct { 66 DWORD cbStruct; 67 LONG cClasses; 68 DWORD offsetClass[1]; 69} DSQUERYCLASSLIST,*LPDSQUERYCLASSLIST; 70 71#define DSQPM_GETCLASSLIST (CQPM_HANDLERSPECIFIC+0) 72#define DSQPM_HELPTOPICS (CQPM_HANDLERSPECIFIC+1) 73#endif 74 75#endif 76