PORT.H
上传用户:bangxh
上传日期:2007-01-31
资源大小:42235k
文件大小:3k
源码类别:

Windows编程

开发平台:

Visual C++

  1. /******************************************************************************
  2. *       This is a part of the Microsoft Source Code Samples. 
  3. *       Copyright (C) 1993-1997 Microsoft Corporation.
  4. *       All rights reserved. 
  5. *       This source code is only intended as a supplement to 
  6. *       Microsoft Development Tools and/or WinHelp documentation.
  7. *       See these sources for detailed information regarding the 
  8. *       Microsoft samples programs.
  9. ******************************************************************************/
  10. // include windows.h before including this header file into your source
  11. // define some string length constants
  12. #define    MAXTOKENLEN   100
  13. #define    MAXHELPLEN   100
  14. #define    MAXISSUELEN   1024
  15. #define    MAXSUGGESTLEN   1024
  16. // define option flags
  17. #define    PT_IGNORETOKEN   0x00010000 // informs port.dll to ignore this token
  18. #define    PT_DEFAULT   0x00000000 // checks for everything
  19. #define    PT_NOAPIS   0x00000002 // do not check for APIs
  20. #define    PT_NOMESSAGES   0x00000004 // do not check for messages
  21. #define    PT_NOTYPES   0x00000008 // do not check for types
  22. #define    PT_NOSTRUCTURES   0x00000010 // do not check for structures
  23. #define    PT_NOMACROS   0x00000020 // do not check for macros
  24. #define    PT_NOCONSTANTS   0x00000040 // do not check for constants
  25. #define    PT_NOCUSTOM   0x00000080 // do not check for custom tokens
  26. #define    PT_IGNORECASE   0x00000100 // disable case sensitivity
  27. //   (not helpful for APIs and MSGs)
  28. // result structure returns results of line checked
  29. typedef struct tagResult
  30.     {
  31.     char    *lpszToken;
  32.     char    *lpszHelpStr;
  33.     char    *lpszIssue;
  34.     char    *lpszSuggest;
  35.     int     nPosToken;
  36.     }RESULT, * LPRESULT;
  37. // function checks a string for a matching token
  38. BOOL WINAPI CheckString (char *lpszSrc, DWORD fSearch, LPRESULT lpResult);
  39. //    lpszSrc  - source string to search
  40. //    fSearch  - search flags define how to check string
  41. //    lpResult - structure of data passed to/from DLL
  42. //
  43. // When calling this function you must pass a valid LPRESULT structure having
  44. //   allocated memory for each of the string pointer fields in the structure.
  45. //   It is recommended that you allocate enough memory to fulfill the max length
  46. //   for each field as defined by the constants above. Also, you must indicate the
  47. //   actual length of each string allocated in the first WORD of each string.  The
  48. //   CheckString function will copy at most length-1 characters and zero terminate
  49. //   the string for you.
  50. //
  51. // New for version 2.2.  The option to ignore a specific issue for the duration of
  52. //   the DLL is loaded is now provided.  This is done by calling the CheckString
  53. //   function with the PT_IGNORETOKEN bit set in the search flags.  In this case,
  54. //   the CheckString function toggles the ignore state on a token matching the string
  55. //   lpszSrc passed to the function.  The lpResult parameter is ignored in this case.
  56. //   Successive calls with the PT_IGNORETOKEN bit can be used to toggle the state of
  57. //   any token to IGNORED or not IGNORED.
  58. //  NOTE: The PT_IGNORETOKEN flag cannot be reset by the DLL since the search flags
  59. //   parameter is passed by value.  The application that calls CheckString must reset
  60. //   the flag when the function returns.
  61. //