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.

158 lines
5.5 KiB

  1. //
  2. // MODULE: APGTS.H
  3. //
  4. // PURPOSE: Main header file for DLL
  5. //
  6. // PROJECT: Generic Troubleshooter DLL for Microsoft AnswerPoint
  7. //
  8. // COMPANY: Saltmine Creative, Inc. (206)-284-7511 [email protected]
  9. //
  10. // AUTHOR: Roman Mach
  11. //
  12. // ORIGINAL DATE: 8-2-96
  13. //
  14. // NOTES:
  15. // 1. Based on Print Troubleshooter DLL
  16. //
  17. // Version Date By Comments
  18. //--------------------------------------------------------------------
  19. // V0.1 - RM Original
  20. // V3.0 7-24-98 JM Major revision, use STL.
  21. //
  22. #ifndef __APGTS_H_
  23. #define __APGTS_H_ 1
  24. #include <windows.h>
  25. extern HANDLE ghModule;
  26. ///////////////////////////////////////////////////////////////////////////////
  27. // Simple macros used to eliminate unnecessarily conditionally compiled code hopefully
  28. // in a readable fashion.
  29. #ifdef LOCAL_TROUBLESHOOTER
  30. #define RUNNING_LOCAL_TS() true
  31. #define RUNNING_ONLINE_TS() false
  32. #else
  33. #define RUNNING_LOCAL_TS() false
  34. #define RUNNING_ONLINE_TS() true
  35. #endif
  36. ///////////////////////////////////////////////////////////////////////////////
  37. // Standard symbolic names for standard (implicit) nodes
  38. #define NODE_PROBLEM_ASK _T("ProblemAsk") // When we're posted a request, the second
  39. // field is ProblemAsk=<problem node symbolic name>
  40. // changed from "TShootProblem" 10/31/97 JM
  41. #define NODE_LIBRARY_ASK _T("asklibrary") // When we're started from the Launcher,
  42. // name field is "asklibrary", and value is empty string
  43. #define NODE_SERVICE _T("Service")
  44. #define NODE_FAIL _T("Fail")
  45. #define NODE_BYE _T("Bye")
  46. #define NODE_IMPOSSIBLE _T("Impossible")
  47. #define NODE_FAILALLCAUSESNORMAL _T("FailAllCausesNormal")
  48. // Field names for HTTP request. These are on the HTML <FORM>
  49. #define C_TYPE _T("type") // pre version 3.0 normal request, now deprecated
  50. // First argument:
  51. // type=<TS topic name>
  52. // Second argument:
  53. // <IDH of Problem Page>=<IDH of Selected Problem>
  54. // or
  55. // ProblemAsk=<IDH of Selected Problem>
  56. // Succeeding arguments may be:
  57. // <number (IDH)>=<number (state)>
  58. // or
  59. // <symbolic node name>=<number (state)>
  60. #define C_FIRST _T("first") // Display "first" page (status page), which
  61. // also provides access to all troubleshooting
  62. // topics.
  63. // No further expected inputs here
  64. #define C_FURTHER_GLOBAL _T("GlobalStatus")
  65. #define C_THREAD_OVERVIEW _T("ThreadStatus")
  66. #define C_TOPIC_STATUS _T("TopicStatus")
  67. #define C_PRELOAD _T("preload") // pre version 3.0 integration with a sniffer,
  68. // now deprecated
  69. // same inputs as C_TYPE
  70. // Only difference is that this means to
  71. // go looking to see if a cause is already
  72. // established.
  73. #define C_TOPIC _T("topic") // version 3.0 normal request
  74. // First argument:
  75. // topic=<TS topic name>
  76. // Second argument:
  77. // ProblemAsk=<NID or name of Selected Problem>
  78. // Succeeding arguments:
  79. // <symbolic node name>=<number (state)>
  80. #define C_TEMPLATE _T("template") // version 3.0 enhancement to permit the
  81. // the use of an arbitrary HTI file to be
  82. // used with an arbitrary DSC file.
  83. #define C_PWD _T("pwd")
  84. #define C_TOPIC_AND_PROBLEM _T("TopicAndProblem") // version 3.x (not yet used in V3.0),
  85. // allows specification of topic & problem by
  86. // a single radio button. This enables an HTML
  87. // page seamlessly to put problems from multiple
  88. // topics in a single form.
  89. // First argument:
  90. // TopicAndProblem=<TS topic name>,<NID or name of Selected Problem>
  91. // The comma in the line above is a literal comma, e.g.
  92. // TopicAndProblem=mem,OutOfMemory
  93. // Succeeding arguments:
  94. // <symbolic node name>=<number (state)>
  95. // Symbols from HTTP query
  96. #define C_COOKIETAG _T("CK_") // V3.2 enhancement to support cookies passed in
  97. // via a GET or a POST.
  98. #define C_SNIFFTAG _T("SNIFFED_") // V3.2 enhancement to allow indication of a
  99. // sniffed state for a particular node (independent
  100. // of its current state).
  101. #define C_LAST_SNIFFED_MANUALLY \
  102. _T("LAST_SNIFFED_MANUALLY") // To identify that last node was sniffed manually
  103. #define C_AMPERSAND _T("&") // Standard delimiter character.
  104. #define C_EQUALSIGN _T("=") // Standard delimiter character.
  105. // These names serve "AllowAutomaticSniffing" checkbox.
  106. // Currently they are relevant for Local Troubleshooter only.
  107. // Oleg. 10.25.99
  108. #define C_ALLOW_AUTOMATIC_SNIFFING_NAME _T("boxAllowSniffing")
  109. #define C_ALLOW_AUTOMATIC_SNIFFING_CHECKED _T("checked")
  110. #define C_ALLOW_AUTOMATIC_SNIFFING_UNCHECKED _T("unchecked")
  111. //------------- Config file manager object ---------------//
  112. #define DLLNAME _T("apgts.dll")
  113. #define DLLNAME2 "apgts.dll"
  114. #define CFG_HEADER _T("[APGTS]")
  115. #define REG_SOFTWARE_LOC _T("SOFTWARE\\ISAPITroubleShoot")
  116. #define REG_THIS_PROGRAM _T("APGTS")
  117. #define TS_REG_CLASS _T("Generic_Troubleshooter_DLL")
  118. #define REG_EVT_PATH _T("SYSTEM\\CurrentControlSet\\Services\\EventLog\\Application")
  119. #define REG_EVT_MF _T("EventMessageFile")
  120. #define REG_EVT_TS _T("TypesSupported")
  121. // Default log file directory.
  122. #define DEF_LOGFILEDIRECTORY _T("d:\\http\\support\\tshoot\\log\\")
  123. // maximum cache for belief networks
  124. #define MAXCACHESIZE 200
  125. // file extensions and suffixes
  126. #define LOCALTS_EXTENSION_HTM _T(".HTM")
  127. #define LOCALTS_SUFFIX_RESULT _T("_result")
  128. #endif