+@@ -110,6 +131,11 @@
+ WINADVAPI LONG WINAPI RegSetValueW(HKEY,LPCWSTR,DWORD,LPCWSTR,DWORD);
+ WINADVAPI LONG WINAPI RegUnLoadKeyA(HKEY,LPCSTR);
+ WINADVAPI LONG WINAPI RegUnLoadKeyW(HKEY,LPCWSTR);
++#if (WINVER >= _WIN32_WINNT_VISTA)
++typedef LONG LSTATUS;
++WINADVAPI LONG WINAPI RegGetValueA(HKEY hkey,LPCSTR lpSubKey,LPCSTR lpValue,DWORD dwFlags,LPDWORD pdwType,PVOID pvData,LPDWORD pcbData);
++WINADVAPI LONG WINAPI RegGetValueW(HKEY hkey,LPCWSTR lpSubKey,LPCWSTR lpValue,DWORD dwFlags,LPDWORD pdwType,PVOID pvData,LPDWORD pcbData);
++#endif
+
+ #ifdef UNICODE
+ typedef VALENTW VALENT,*PVALENT;
+@@ -139,6 +165,9 @@
+ #define RegSetValue RegSetValueW
+ #define RegSetValueEx RegSetValueExW
+ #define RegUnLoadKey RegUnLoadKeyW
++#if (WINVER >= _WIN32_WINNT_VISTA)
++#define RegGetValue RegGetValueW
++#endif
+ #else
+ typedef VALENTA VALENT,*PVALENT;
+ #define AbortSystemShutdown AbortSystemShutdownA
+@@ -167,6 +196,9 @@
+ #define RegSetValue RegSetValueA
+ #define RegSetValueEx RegSetValueExA
+ #define RegUnLoadKey RegUnLoadKeyA
++#if (WINVER >= _WIN32_WINNT_VISTA)
++#define RegGetValue RegGetValueA
++#endif
+ #endif
+ #endif
+ #ifdef __cplusplus