Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

84 lines
2.1 KiB

  1. //+-------------------------------------------------------------------------
  2. //
  3. // Microsoft Windows
  4. //
  5. // Copyright (C) Microsoft Corporation, 1996 - 1999
  6. //
  7. // File: rshx32.h
  8. //
  9. // Remote administration shell extension.
  10. //
  11. //--------------------------------------------------------------------------
  12. #ifndef _RSHX32_H_
  13. #define _RSHX32_H_
  14. #ifndef UNICODE
  15. #error "No ANSI support yet"
  16. #endif
  17. extern "C"
  18. {
  19. #include <nt.h> // for SE_TAKE_OWNERSHIP_PRIVILEGE, etc
  20. #include <ntrtl.h>
  21. #include <nturtl.h>
  22. #include <seopaque.h> // RtlObjectAceSid, etc.
  23. #include <sertlp.h> // RtlpOwnerAddrSecurityDescriptor, etc.
  24. }
  25. #define INC_OLE2
  26. #include <windows.h>
  27. #include "resource.h" // resource IDs
  28. #ifndef RC_INVOKED
  29. #include <winspool.h>
  30. #include <shellapi.h> // HDROP, ShellExecuteEx
  31. #include <shlobj.h> // CF_IDLIST
  32. #include <shlwapi.h> // StrChr
  33. #include <commctrl.h> // property page stuff
  34. #include <comctrlp.h> // DPA
  35. #include <aclapi.h>
  36. #include <aclui.h>
  37. #include <common.h>
  38. #include "cstrings.h"
  39. #include "util.h"
  40. extern "C"
  41. {
  42. #include "authz.h"
  43. }
  44. #include "ntfssi.h"
  45. #include "printsi.h"
  46. #if(_WIN32_WINNT >= 0x0500)
  47. #include <shlobjp.h> // ILCombine
  48. #else // _WIN32_WINNT < 0x0500
  49. #define ILIsEmpty(pidl) ((pidl)->mkid.cb==0)
  50. STDAPI_(void) ILFree(LPITEMIDLIST pidl);
  51. STDAPI_(LPITEMIDLIST) ILCombine(LPCITEMIDLIST pidl1, LPCITEMIDLIST pidl2);
  52. #endif // _WIN32_WINNT < 0x0500
  53. #define ALL_SECURITY_ACCESS (READ_CONTROL | WRITE_DAC | WRITE_OWNER | ACCESS_SYSTEM_SECURITY)
  54. // Magic debug flags
  55. #define TRACE_RSHX32 0x00000001
  56. #define TRACE_SI 0x00000002
  57. #define TRACE_NTFSSI 0x00000004
  58. #define TRACE_PRINTSI 0x00000008
  59. #define TRACE_UTIL 0x00000010
  60. #define TRACE_NTFSCOMPARE 0x00000020
  61. #define TRACE_ALWAYS 0xffffffff // use with caution
  62. //
  63. // Global variables
  64. //
  65. extern HINSTANCE g_hInstance;
  66. extern LONG g_cRefThisDll;
  67. extern CLIPFORMAT g_cfShellIDList;
  68. extern CLIPFORMAT g_cfPrinterGroup;
  69. extern CLIPFORMAT g_cfMountedVolume;
  70. #endif // RC_INVOKED
  71. #endif // _RSHX32_H_