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.

131 lines
3.3 KiB

  1. //\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\//\\
  2. //
  3. // Stdinc.h
  4. //
  5. // Contains the standard include files used by.cpp files in ineticon. Most
  6. // of the ineticon files will include this file.
  7. //
  8. // History:
  9. //
  10. // 3/16/97 edwardp Created.
  11. //
  12. ////////////////////////////////////////////////////////////////////////////////
  13. //
  14. // Check for previous includes of this file.
  15. //
  16. #ifndef _STDINC_H_
  17. #define _STDINC_H_
  18. #ifdef UNICODE
  19. // This stuff must run on Win95
  20. #define _WIN32_WINDOWS 0x0400
  21. #ifndef WINVER
  22. #define WINVER 0x0400
  23. #endif
  24. #define _OLEAUT32_ // get DECLSPEC_IMPORT stuff right, we are defing these
  25. #define _BROWSEUI_ // define bruiapi as functions exported instead of imported
  26. #define _WINX32_ // get DECLSPEC_IMPORT stuff right for WININET API
  27. #define _URLCACHEAPI // get DECLSPEC_IMPORT stuff right for WININET CACHE API
  28. #ifndef STRICT
  29. #define STRICT
  30. #endif
  31. //
  32. // Globaly defined includes.
  33. //
  34. //
  35. // Include <w95wraps.h> before anything else that messes with names.
  36. // Although everybody gets the wrong name, at least it's *consistently*
  37. // the wrong name, so everything links.
  38. //
  39. // NOTE: This means that while debugging you will see functions like
  40. // CWindowImplBase__DefWindowProcWrapW when you expected to see
  41. // CWindowImplBase__DefWindowProc.
  42. //
  43. #define POST_IE5_BETA // turn on post-split iedev stuff
  44. #endif
  45. #define _SHDOCVW_
  46. #ifdef UNICODE
  47. #include <w95wraps.h>
  48. #endif
  49. #include <windows.h>
  50. #include <ole2.h>
  51. #include <debug.h> // From shell\inc.
  52. #ifdef UNICODE
  53. #define _FIX_ENABLEMODELESS_CONFLICT // for shlobj.h
  54. #endif
  55. #include <wininet.h> // INTERNET_MAX_URL_LENGTH. Must be before shlobjp.h!
  56. #include <shlobj.h> // IShellFolder
  57. #include <ieguidp.h>
  58. #include <iepriv.h>
  59. #include <ccstock.h> // From shell\inc.
  60. #ifdef UNICODE
  61. #include <port32.h>
  62. #endif
  63. #include <urlmon.h> // IPersistMoniker, IBindStatusCallback
  64. #ifdef UNICODE
  65. #include <winineti.h> // Cache APIs & structures
  66. #endif
  67. #include <intshcut.h> // IUniformResourceLocator
  68. #include <msxml.h>
  69. #include <iimgctx.h> // IImgCtx interface.
  70. #include "shlwapi.h"
  71. #include <webcheck.h> // ISubscriptionMgr
  72. #include <mstask.h> // TASK_TRIGGER
  73. #include <chanmgr.h> // Channel Mgr interface
  74. #include <shdocvw.h> // WhichPlatform
  75. //
  76. // Localy defined includes.
  77. //
  78. #include "debug.h"
  79. #include "cache.h"
  80. #include "runonnt.h"
  81. #include "globals.h"
  82. #include "strutil.h"
  83. #include "utils.h"
  84. //===========================================================================
  85. // ITEMIDLIST
  86. //===========================================================================
  87. // unsafe macros
  88. #define _ILSkip(pidl, cb) ((LPITEMIDLIST)(((BYTE*)(pidl))+cb))
  89. #define _ILNext(pidl) _ILSkip(pidl, (pidl)->mkid.cb)
  90. #ifdef UNIX
  91. extern "C" void unixEnsureFileScheme(TCHAR *lpszFileScheme);
  92. #undef DebugMsg
  93. #undef TraceMsg
  94. #undef ASSERT
  95. #ifdef DEBUG
  96. extern "C" void _DebugMsgUnix(int i, const char *s, ...);
  97. #define DebugMsg _DebugMsgUnix
  98. #define TraceMsg _DebugMsgUnix
  99. extern "C" void _DebugAssertMsgUnix(char *msg, char *fileName, int line);
  100. #define ASSERT(x) { if(!(x)) _DebugAssertMsgUnix(#x, __FILE__, __LINE__);}
  101. #else
  102. #define DebugMsg
  103. #define TraceMsg
  104. #define ASSERT(x)
  105. #endif /* DEBUG */
  106. #endif /* UNIX */
  107. #endif // _STDINC_H_