Leaked source code of windows server 2003
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.

123 lines
3.6 KiB

  1. ///////////////////////////////////////////////////////////////////////////////
  2. //
  3. // Copyright (c) 2001, Microsoft Corporation All rights reserved.
  4. //
  5. // Module Name:
  6. //
  7. // euroconvr.h
  8. //
  9. // Abstract:
  10. //
  11. // This file contains global definition for the euroconv.exe utility.
  12. //
  13. // Revision History:
  14. //
  15. // 2001-07-30 lguindon Created.
  16. //
  17. ///////////////////////////////////////////////////////////////////////////////
  18. #ifndef _EUROCONV_H_
  19. #define _EUROCONV_H_
  20. ///////////////////////////////////////////////////////////////////////////////
  21. //
  22. // Includes Files.
  23. //
  24. ///////////////////////////////////////////////////////////////////////////////
  25. #include <nt.h>
  26. #include <ntrtl.h>
  27. #include <nturtl.h>
  28. #include <windows.h>
  29. #include <winuser.h>
  30. #include <commctrl.h>
  31. #include <shlwapi.h>
  32. #include <shellapi.h>
  33. #include <regstr.h>
  34. #include <stdio.h>
  35. #include <userenv.h>
  36. #include "resource.h"
  37. // Safer string handling
  38. #define STRSAFE_LIB
  39. #include <strsafe.h>
  40. ///////////////////////////////////////////////////////////////////////////////
  41. //
  42. // Definitions
  43. //
  44. ///////////////////////////////////////////////////////////////////////////////
  45. #define MAX_SCURRENCY 5 // max wide chars in sCurrency
  46. #define MAX_SMONDECSEP 3 // max wide chars in sMonDecimalSep
  47. #define MAX_SMONTHOUSEP 3 // max wide chars in sMonThousandSep
  48. #define MAX_ICURRDIGITS 2 // max wide chars in iCurrDigits
  49. ///////////////////////////////////////////////////////////////////////////////
  50. //
  51. // Structure
  52. //
  53. ///////////////////////////////////////////////////////////////////////////////
  54. typedef struct _euro_exception_s
  55. {
  56. DWORD dwLocale; // Locale identifier
  57. CHAR chDecimalSep[MAX_SMONDECSEP+1]; // Currency decimal separator
  58. CHAR chDigits[MAX_ICURRDIGITS+1]; // Currency digits number after decimal point
  59. CHAR chThousandSep[MAX_SMONTHOUSEP+1]; // Currency thousand separator
  60. } EURO_EXCEPTION, *PEURO_EXCEPTION;
  61. ///////////////////////////////////////////////////////////////////////////////
  62. //
  63. // Globals
  64. //
  65. ///////////////////////////////////////////////////////////////////////////////
  66. extern BOOL gbSilence;
  67. extern EURO_EXCEPTION gBaseEuroException[];
  68. extern PEURO_EXCEPTION gOverrideEuroException;
  69. extern HGLOBAL hOverrideEuroException;
  70. extern HINSTANCE ghInstance;
  71. extern BOOL gbSilence;
  72. extern BOOL gbAll;
  73. extern DWORD gdwVersion;
  74. #ifdef DEBUG
  75. extern BOOL gbPatchCheck;
  76. #endif // DEBUG
  77. extern const CHAR c_szCPanelIntl[];
  78. extern const CHAR c_szCPanelIntl_DefUser[];
  79. extern const CHAR c_szLocale[];
  80. extern const CHAR c_szCurrencySymbol[];
  81. extern const WCHAR c_wszCurrencySymbol[];
  82. extern const CHAR c_szCurrencyDecimalSep[];
  83. extern const CHAR c_szCurrencyThousandSep[];
  84. extern const CHAR c_szCurrencyDigits[];
  85. extern const CHAR c_szIntl[];
  86. extern HINSTANCE hUserenvDLL;
  87. extern BOOL (*pfnGetProfilesDirectory)(LPSTR, LPDWORD);
  88. extern HINSTANCE hUser32DLL;
  89. extern long (*pfnBroadcastSystemMessage)(DWORD, LPDWORD, UINT, WPARAM, LPARAM);
  90. extern HINSTANCE hNtdllDLL;
  91. extern LONG (*pfnRtlAdjustPrivilege)(ULONG, BOOLEAN, BOOLEAN, PBOOLEAN);
  92. // Useful macro for getting buffer sizes
  93. #define ARRAYSIZE(a) (sizeof(a) / sizeof(a[0]))
  94. ///////////////////////////////////////////////////////////////////////////////
  95. //
  96. // Prototypes
  97. //
  98. ///////////////////////////////////////////////////////////////////////////////
  99. PEURO_EXCEPTION GetLocaleOverrideInfo(LCID locale);
  100. #endif //_EUROCONV_H_