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.

109 lines
2.3 KiB

  1. /*******************************************************************************
  2. *
  3. * (C) COPYRIGHT MICROSOFT CORP., 1993-1994
  4. *
  5. * TITLE: REGMISC.H
  6. *
  7. * VERSION: 4.01
  8. *
  9. * AUTHOR: Tracy Sharpe
  10. *
  11. * DATE: 05 Mar 1994
  12. *
  13. * Miscellaneous routines for the Registry Editor.
  14. *
  15. ********************************************************************************
  16. *
  17. * CHANGE LOG:
  18. *
  19. * DATE REV DESCRIPTION
  20. * ----------- --- -------------------------------------------------------------
  21. * 05 Mar 1994 TCS Original implementation.
  22. *
  23. *******************************************************************************/
  24. #ifndef _INC_REGMISC
  25. #define _INC_REGMISC
  26. PTSTR
  27. CDECL
  28. LoadDynamicString(
  29. UINT StringID,
  30. ...
  31. );
  32. // Wrapper for LocalFree to make the code a little easier to read.
  33. #define DeleteDynamicString(x) LocalFree((HLOCAL) (x))
  34. BOOL
  35. PASCAL
  36. CopyRegistry(
  37. HKEY hSourceKey,
  38. HKEY hDestinationKey
  39. );
  40. HBRUSH
  41. PASCAL
  42. CreateDitheredBrush(
  43. VOID
  44. );
  45. VOID
  46. PASCAL
  47. SendChildrenMessage(
  48. HWND hWnd,
  49. UINT Message,
  50. WPARAM wParam,
  51. LPARAM lParam
  52. );
  53. BOOL
  54. PASCAL
  55. MessagePump(
  56. HWND hDialogWnd
  57. );
  58. LPTSTR
  59. PASCAL
  60. GetNextSubstring(
  61. LPTSTR lpString
  62. );
  63. int
  64. PASCAL
  65. InternalMessageBox(
  66. HINSTANCE hInst,
  67. HWND hWnd,
  68. LPCTSTR pszFormat,
  69. LPCTSTR pszTitle,
  70. UINT fuStyle,
  71. ...
  72. );
  73. // The Windows 95 and Windows NT implementations of RegDeleteKey differ in how
  74. // they handle subkeys of the specified key to delete. Windows 95 will delete
  75. // them, but NT won't, so we hide the differences using this macro.
  76. #ifdef WINNT
  77. LONG
  78. RegDeleteKeyRecursive(
  79. IN HKEY hKey,
  80. IN LPCTSTR lpszSubKey
  81. );
  82. #else
  83. #define RegDeleteKeyRecursive(hkey, lpsz) RegDeleteKey(hkey, lpsz)
  84. #endif
  85. #define IsRegStringType(x) (((x) == REG_SZ) || ((x) == REG_EXPAND_SZ) || ((x) == REG_MULTI_SZ))
  86. #define ExtraAllocLen(Type) (IsRegStringType((Type)) ? sizeof(TCHAR) : 0)
  87. LONG RegEdit_QueryValueEx(
  88. HKEY hKey, // handle to key
  89. LPCTSTR lpValueName, // value name
  90. LPDWORD lpReserved, // reserved
  91. LPDWORD lpType, // type buffer
  92. LPBYTE lpData, // data buffer
  93. LPDWORD lpcbData // size of data buffer
  94. );
  95. #endif // _INC_REGMISC