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.

75 lines
2.0 KiB

  1. /*++
  2. Copyright (c) 1996 Microsoft Corporation
  3. Module Name:
  4. ansi.c
  5. Abstract:
  6. Builds A versions of the fileenum APIs.
  7. Author:
  8. Jim Schmidt (jimschm) 16-Aug-1996
  9. Revision History:
  10. Jim Schmidt (jimschm) 27-Nov-1996 Added level and filter to EnumTree
  11. Jim Schmidt (jimschm) 20-Dec-1996 Added callback levels and made single
  12. source file for both A and W versions
  13. Mike Condra (mikeco) 02-Jun-1997 Add excluded-file/path functions
  14. --*/
  15. #ifdef UNICODE
  16. #undef UNICODE
  17. #endif
  18. #ifdef _UNICODE
  19. #undef _UNICODE
  20. #endif
  21. #include "no_pch.h"
  22. #include "..\..\inc\fileenum.h"
  23. typedef struct {
  24. FILEENUMPROCA fnEnumCallback;
  25. FILEENUMFAILPROCA fnFailCallback;
  26. DWORD EnumID;
  27. LPVOID pParam;
  28. DWORD Levels;
  29. DWORD CurrentLevel;
  30. DWORD AttributeFilter;
  31. } ENUMSTRUCTA, *PENUMSTRUCTA;
  32. BOOL EnumTreeEngineA (LPCSTR CurrentPath, PENUMSTRUCTA pes);
  33. BOOL IsPathExcludedA (DWORD EnumID, LPCSTR Path);
  34. BOOL IsFileExcludedA (DWORD EnumID, LPCSTR File, BYTE byBitmask[]);
  35. BOOL BuildExclusionsFromInfA (DWORD EnumID, PEXCLUDEINFA ExcludeInfStruct);
  36. void CreateBitmaskA (DWORD EnumID, LPCSTR FindPattern, BYTE byBitmask[]);
  37. //
  38. // Build A versions of fileenum
  39. //
  40. #define EnumerateAllDrivesT EnumerateAllDrivesA
  41. #define FILEENUMPROCT FILEENUMPROCA
  42. #define FILEENUMFAILPROCT FILEENUMFAILPROCA
  43. #define PEXCLUDEINFT PEXCLUDEINFA
  44. #define EnumerateTreeT EnumerateTreeA
  45. #define ENUMSTRUCTT ENUMSTRUCTA
  46. #define PENUMSTRUCTT PENUMSTRUCTA
  47. #define EnumTreeEngineT EnumTreeEngineA
  48. #define IsPathExcludedT IsPathExcludedA
  49. #define CreateBitmaskT CreateBitmaskA
  50. #define IsFileExcludedT IsFileExcludedA
  51. #define BuildExclusionsFromInfT BuildExclusionsFromInfA
  52. #define ClearExclusionsT ClearExclusionsA
  53. #define ExcludeFileT ExcludeFileA
  54. #define ExcludePathT ExcludePathA
  55. #include "enumaw.c"