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.

114 lines
2.5 KiB

  1. /*++
  2. Copyright (c) 1991 Microsoft Corporation
  3. Module Name:
  4. find.hxx
  5. Abstract:
  6. Author:
  7. Environment:
  8. ULIB, User Mode
  9. --*/
  10. #if ! defined( _FIND_ )
  11. #define _FIND_
  12. #include "object.hxx"
  13. #include "keyboard.hxx"
  14. #include "program.hxx"
  15. DECLARE_CLASS( FIND );
  16. class FIND : public PROGRAM {
  17. public:
  18. DECLARE_CONSTRUCTOR( FIND );
  19. NONVIRTUAL
  20. BOOLEAN
  21. Initialize (
  22. );
  23. NONVIRTUAL
  24. BOOLEAN
  25. IsDos5CompatibleFileName(
  26. IN PCPATH Path
  27. );
  28. NONVIRTUAL
  29. VOID
  30. Terminate(
  31. );
  32. NONVIRTUAL
  33. VOID
  34. SearchFiles(
  35. );
  36. NONVIRTUAL
  37. VOID
  38. DisplayMessageAndExit(
  39. IN MSGID MsgId,
  40. IN ULONG ExitCode,
  41. IN MESSAGE_TYPE Type DEFAULT ERROR_MESSAGE,
  42. IN PWSTRING String DEFAULT NULL
  43. );
  44. private:
  45. NONVIRTUAL
  46. ULONG
  47. SearchStream(
  48. IN PSTREAM StreamToSearch
  49. );
  50. //
  51. // TRUE = do a case-sensitive matching
  52. //
  53. BOOLEAN _CaseSensitive;
  54. //
  55. // TRUE = output lines that contain the pattern
  56. //
  57. BOOLEAN _LinesContainingPattern;
  58. //
  59. // TRUE = output the lines that match/don't match
  60. // FALSE = count the lines that match/don't match
  61. //
  62. BOOLEAN _OutputLines;
  63. //
  64. // TRUE = output line numbers if lines are being output
  65. //
  66. BOOLEAN _OutputLineNumbers;
  67. //
  68. // TRUE = skip offline (Remote Storage truncated) files
  69. //
  70. BOOLEAN _SkipOfflineFiles;
  71. DSTRING _PatternString;
  72. MULTIPLE_PATH_ARGUMENT _PathArguments;
  73. STREAM_MESSAGE _Message;
  74. ULONG _ErrorLevel;
  75. };
  76. #endif // _FIND_