home *** CD-ROM | disk | FTP | other *** search
/ PC Format (South-Africa) 2001 May / PCFMay2001.iso / Xenon / C++ / FreeCommandLineTools.exe / Include / dsquery.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-01-31  |  4.9 KB  |  134 lines

  1. #ifndef __dsquery_h
  2. #pragma option push -b -a8 -pc -A- /*P_O_Push*/
  3. #define __dsquery_h
  4.  
  5. //
  6. // query handler ID for dsquery.
  7. //
  8.  
  9. DEFINE_GUID(CLSID_DsQuery, 0x8a23e65e, 0x31c2, 0x11d0, 0x89, 0x1c, 0x0, 0xa0, 0x24, 0xab, 0x2d, 0xbb);
  10.  
  11. //
  12. // standard forms shipped in dsquery.dll
  13. //
  14.  
  15. DEFINE_GUID(CLSID_DsFindObjects, 0x83ee3fe1, 0x57d9, 0x11d0, 0xb9, 0x32, 0x0, 0xa0, 0x24, 0xab, 0x2d, 0xbb);
  16. DEFINE_GUID(CLSID_DsFindPeople, 0x83ee3fe2, 0x57d9, 0x11d0, 0xb9, 0x32, 0x0, 0xa0, 0x24, 0xab, 0x2d, 0xbb);
  17. DEFINE_GUID(CLSID_DsFindPrinter, 0xb577f070, 0x7ee2, 0x11d0, 0x91, 0x3f, 0x0, 0xaa, 0x0, 0xc1, 0x6e, 0x65);
  18. DEFINE_GUID(CLSID_DsFindComputer, 0x16006700, 0x87ad, 0x11d0, 0x91, 0x40, 0x0, 0xaa, 0x0, 0xc1, 0x6e, 0x65);
  19. DEFINE_GUID(CLSID_DsFindVolume, 0xc1b3cbf1, 0x886a, 0x11d0, 0x91, 0x40, 0x0, 0xaa, 0x0, 0xc1, 0x6e, 0x65);
  20. DEFINE_GUID(CLSID_DsFindContainer, 0xc1b3cbf2, 0x886a, 0x11d0, 0x91, 0x40, 0x0, 0xaa, 0x0, 0xc1, 0x6e, 0x65);
  21. DEFINE_GUID(CLSID_DsFindAdvanced, 0x83ee3fe3, 0x57d9, 0x11d0, 0xb9, 0x32, 0x0, 0xa0, 0x24, 0xab, 0x2d, 0xbb);
  22.  
  23. //
  24. // admin forms
  25. //
  26.  
  27. DEFINE_GUID(CLSID_DsFindDomainController, 0x538c7b7e, 0xd25e, 0x11d0, 0x97, 0x42, 0x0, 0xa0, 0xc9, 0x6, 0xaf, 0x45);
  28. DEFINE_GUID(CLSID_DsFindFrsMembers, 0x94ce4b18, 0xb3d3, 0x11d1, 0xb9, 0xb4, 0x0, 0xc0, 0x4f, 0xd8, 0xd5, 0xb0);
  29.  
  30.  
  31. #ifndef GUID_DEFS_ONLY
  32.  
  33. //
  34. // DSQUERYINITPARAMS
  35. // -----------------
  36. //  This structured is used when creating a new query view.
  37. //
  38.  
  39. #define DSQPF_NOSAVE                 0x00000001 // = 1 => remove save verb
  40. #define DSQPF_SAVELOCATION           0x00000002 // = 1 => pSaveLocation contains directory to save queries into
  41. #define DSQPF_SHOWHIDDENOBJECTS      0x00000004 // = 1 => show objects marked as "hidden" in results
  42. #define DSQPF_ENABLEADMINFEATURES    0x00000008 // = 1 => show admin verbs, property pages etc
  43. #define DSQPF_ENABLEADVANCEDFEATURES 0x00000010 // = 1 => set the advanced flag for the property pages
  44. #define DSQPF_HASCREDENTIALS         0x00000020 // = 1 => pServer, pUserName & pPassword are valid
  45.  
  46. typedef struct
  47. {
  48.     DWORD  cbStruct;
  49.     DWORD  dwFlags;
  50.     LPWSTR pDefaultScope;           // -> Active Directory path to use as scope / == NULL for none
  51.     LPWSTR pDefaultSaveLocation;    // -> Directory to save queries into / == NULL default location
  52.     LPWSTR pUserName;               // -> user name to authenticate with
  53.     LPWSTR pPassword;               // -> password for authentication
  54.     LPWSTR pServer;                 // -> server to use for obtaining trusts etc
  55. } DSQUERYINITPARAMS, * LPDSQUERYINITPARAMS;
  56.  
  57.  
  58. //
  59. // DSQUERYPARAMS
  60. // -------------
  61. //  The DS query handle takes a packed structure which contains the
  62. //  columns and query to be issued.
  63. //
  64.  
  65. #define CFSTR_DSQUERYPARAMS         TEXT("DsQueryParameters")
  66.  
  67. #define DSCOLUMNPROP_ADSPATH        ((LONG)(-1))
  68. #define DSCOLUMNPROP_OBJECTCLASS    ((LONG)(-2))
  69.  
  70. typedef struct
  71. {
  72.     DWORD dwFlags;                  // flags for this column
  73.     INT   fmt;                      // list view form information
  74.     INT   cx;                       // default column width
  75.     INT   idsName;                  // resource ID for the column dispaly name
  76.     LONG  offsetProperty;           // offset to BSTR defining column ADs property name
  77.     DWORD dwReserved;               // reserved field
  78. } DSCOLUMN, * LPDSCOLUMN;
  79.  
  80. typedef struct
  81. {
  82.     DWORD     cbStruct;
  83.     DWORD     dwFlags;
  84.     HINSTANCE hInstance;            // instance handle used for string extraction
  85.     LONG      offsetQuery;          // offset to LDAP filter string
  86.     LONG      iColumns;             // column count
  87.     DWORD     dwReserved;           // reserved field for this query
  88.     DSCOLUMN  aColumns[1];          // array of column descriptions
  89. } DSQUERYPARAMS, * LPDSQUERYPARAMS;
  90.  
  91.  
  92. //
  93. // CF_DSQUERYSCOPE
  94. // ---------------
  95. //  A clipboard format the puts a string version of the scope into a
  96. //  storage medium via GlobalAlloc.
  97. //
  98. #define CFSTR_DSQUERYSCOPE         TEXT("DsQueryScope")
  99.  
  100.  
  101. //
  102. // DSQPM_GETCLASSLIST
  103. // ------------------
  104. //  This page message is sent to the form pages to retrieve the list of classes
  105. //  that the pages are going to query from.  This is used by the feild selector
  106. //  and the property well to build its list of display classes.
  107. //
  108.  
  109. typedef struct
  110. {
  111.     DWORD   cbStruct;
  112.     LONG    cClasses;               // number of classes in array
  113.     DWORD   offsetClass[1];         // offset to the class names (UNICODE)
  114. } DSQUERYCLASSLIST, * LPDSQUERYCLASSLIST;
  115.  
  116.  
  117. #define DSQPM_GETCLASSLIST          (CQPM_HANDLERSPECIFIC+0) // wParam == flags, lParam = LPLPDSQUERYCLASSLIST
  118.  
  119.  
  120. //
  121. // DSQPM_HELPTOPICS
  122. // ----------------
  123. //  This page message is sent to the form pages to allow them to handle the
  124. //  "Help Topics" verb.
  125. //
  126.  
  127. #define DSQPM_HELPTOPICS            (CQPM_HANDLERSPECIFIC+1) // wParam = 0, lParam = hWnd parent
  128.  
  129.  
  130.  
  131. #endif  // GUID_DEFS_ONLY
  132. #pragma option pop /*P_O_Pop*/
  133. #endif
  134.