ddihook.h
上传用户:looem2003
上传日期:2014-07-20
资源大小:13733k
文件大小:3k
源码类别:

打印编程

开发平台:

Visual C++

  1. //  THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF
  2. //  ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO
  3. //  THE IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
  4. //  PARTICULAR PURPOSE.
  5. //
  6. //  Copyright  1998 - 2003  Microsoft Corporation.  All Rights Reserved.
  7. //
  8. //  FILE:    DDIHook.h
  9. //    
  10. //
  11. //  PURPOSE:  Defines the constants used to control DDI hooking.
  12. //      
  13. //
  14. //
  15. //  PLATFORMS:  Windows XP, Windows Server 2003, Windows codenamed Longhorn
  16. //
  17. //
  18. //  History: 
  19. //          06/24/03    xxx created.
  20. //
  21. //
  22. // ==================================================================
  23. // Uncomment any of the following to implement the corresponding
  24. // DDI call. Note that these are the only DDIs that may be hooked
  25. // in this version of UNIDRV.
  26. //
  27. // For this bitmap driver, all we really want to implement is OEMEndDoc. 
  28. // So we comment out the rest of the directives.
  29. //
  30. //  #define IMPL_ALPHABLEND
  31. //  #define IMPL_BITBLT
  32. //  #define IMPL_COPYBITS
  33. //  #define IMPL_DITHERCOLOR
  34.     #define IMPL_ENDDOC
  35. //  #define IMPL_ESCAPE
  36. //  #define IMPL_FILLPATH
  37. //  #define IMPL_FONTMANAGEMENT
  38. //  #define IMPL_GETGLYPHMODE
  39. //  #define IMPL_GRADIENTFILL
  40. //  #define IMPL_LINETO
  41. //  #define IMPL_NEXTBAND
  42. //  #define IMPL_PAINT
  43. //  #define IMPL_PLGBLT
  44. //  #define IMPL_QUERYADVANCEWIDTHS
  45. //  #define IMPL_QUERYFONT
  46. //  #define IMPL_QUERYFONTDATA
  47. //  #define IMPL_QUERYFONTTREE
  48. //  #define IMPL_REALIZEBRUSH
  49. //  #define IMPL_SENDPAGE
  50. //  #define IMPL_STARTBANDING
  51. //  #define IMPL_STARTDOC
  52.     #define IMPL_STARTPAGE
  53. //  #define IMPL_STRETCHBLT
  54. //  #define IMPL_STRETCHBLTROP
  55. //  #define IMPL_STROKEANDFILLPATH
  56. //  #define IMPL_STROKEPATH
  57. //  #define IMPL_TEXTOUT
  58. //  #define IMPL_TRANSPARENTBLT
  59. // Combine the constants above; there are a few places in which
  60. // we need to test if any DDIs have been implemented (as a 
  61. // convenience).
  62. //
  63. #if defined(IMPL_ALPHABLEND)                || 
  64.     defined(IMPL_BITBLT)                    || 
  65.     defined(IMPL_COPYBITS)              || 
  66.     defined(IMPL_DITHERCOLOR)           || 
  67.     defined(IMPL_ENDDOC)                    || 
  68.     defined(IMPL_ESCAPE)                    || 
  69.     defined(IMPL_FILLPATH)                  || 
  70.     defined(IMPL_FONTMANAGEMENT)        || 
  71.     defined(IMPL_GETGLYPHMODE)          || 
  72.     defined(IMPL_GRADIENTFILL)          || 
  73.     defined(IMPL_LINETO)                    || 
  74.     defined(IMPL_NEXTBAND)              || 
  75.     defined(IMPL_PAINT)                 || 
  76.     defined(IMPL_PLGBLT)                    || 
  77.     defined(IMPL_QUERYADVANCEWIDTHS)    || 
  78.     defined(IMPL_QUERYFONT)             || 
  79.     defined(IMPL_QUERYFONTDATA)         || 
  80.     defined(IMPL_QUERYFONTTREE)         || 
  81.     defined(IMPL_REALIZEBRUSH)          || 
  82.     defined(IMPL_SENDPAGE)              || 
  83.     defined(IMPL_STARTBANDING)          || 
  84.     defined(IMPL_STARTDOC)              || 
  85.     defined(IMPL_STARTPAGE)             || 
  86.     defined(IMPL_STRETCHBLT)                || 
  87.     defined(IMPL_STRETCHBLTROP)         || 
  88.     defined(IMPL_STROKEANDFILLPATH)     || 
  89.     defined(IMPL_STROKEPATH)                || 
  90.     defined(IMPL_TEXTOUT)                   || 
  91.     defined(IMPL_TRANSPARENTBLT)
  92.     #define DDIS_HAVE_BEEN_IMPL
  93. #endif