Author: jgardou Date: Thu Sep 25 18:25:47 2014 New Revision: 64282
URL: http://svn.reactos.org/svn/reactos?rev=64282&view=rev Log: [KERNEL32] - Introduce kernel32_vista.dll, aiming at adding implementation of vista+ routines (for wine modules) without screwing kernel32 export list. [MSI][PDH][SNMPAPI] - Link to kernel32_vista
Added: trunk/reactos/dll/win32/kernel32_vista/ trunk/reactos/dll/win32/kernel32_vista/CMakeLists.txt (with props) trunk/reactos/dll/win32/kernel32_vista/DllMain.c (with props) trunk/reactos/dll/win32/kernel32_vista/GetTickCount64.c (with props) trunk/reactos/dll/win32/kernel32_vista/k32_vista.h (with props) trunk/reactos/dll/win32/kernel32_vista/kernel32_vista.spec (with props) Modified: trunk/reactos/dll/win32/CMakeLists.txt trunk/reactos/dll/win32/msi/CMakeLists.txt trunk/reactos/dll/win32/pdh/CMakeLists.txt trunk/reactos/dll/win32/snmpapi/CMakeLists.txt
Modified: trunk/reactos/dll/win32/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/CMakeLists.txt?re... ============================================================================== --- trunk/reactos/dll/win32/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/dll/win32/CMakeLists.txt [iso-8859-1] Thu Sep 25 18:25:47 2014 @@ -71,6 +71,7 @@ add_subdirectory(jscript) add_subdirectory(jsproxy) add_subdirectory(kernel32) +add_subdirectory(kernel32_vista) add_subdirectory(loadperf) add_subdirectory(localspl) add_subdirectory(localui)
Added: trunk/reactos/dll/win32/kernel32_vista/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32_vista/CM... ============================================================================== --- trunk/reactos/dll/win32/kernel32_vista/CMakeLists.txt (added) +++ trunk/reactos/dll/win32/kernel32_vista/CMakeLists.txt [iso-8859-1] Thu Sep 25 18:25:47 2014 @@ -0,0 +1,24 @@ + +add_definitions(-D_KERNEL32_) + +remove_definitions(-D_WIN32_WINNT=0x502) +add_definitions(-D_WIN32_WINNT=0x600) + +spec2def(kernel32_vista.dll kernel32_vista.spec ADD_IMPORTLIB) + +list(APPEND SOURCE + DllMain.c + GetTickCount64.c +) + +add_library(kernel32_vista SHARED + ${SOURCE} + ${CMAKE_CURRENT_BINARY_DIR}/kernel32_vista.def +) + +set_module_type(kernel32_vista win32dll HOTPATCHABLE ENTRYPOINT DllMain 12) + +add_importlibs(kernel32_vista kernel32) + +add_dependencies(kernel32_vista psdk) +add_cd_file(TARGET kernel32_vista DESTINATION reactos/system32 FOR all)
Propchange: trunk/reactos/dll/win32/kernel32_vista/CMakeLists.txt ------------------------------------------------------------------------------ svn:eol-style = native
Added: trunk/reactos/dll/win32/kernel32_vista/DllMain.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32_vista/Dl... ============================================================================== --- trunk/reactos/dll/win32/kernel32_vista/DllMain.c (added) +++ trunk/reactos/dll/win32/kernel32_vista/DllMain.c [iso-8859-1] Thu Sep 25 18:25:47 2014 @@ -0,0 +1,14 @@ + +#include "k32_vista.h" + +BOOL +WINAPI +DllMain(HANDLE hDll, + DWORD dwReason, + LPVOID lpReserved) +{ + /* For now, there isn't much to do */ + if (dwReason == DLL_PROCESS_ATTACH) + DisableThreadLibraryCalls(hDll); + return TRUE; +}
Propchange: trunk/reactos/dll/win32/kernel32_vista/DllMain.c ------------------------------------------------------------------------------ charset = UTF-8
Propchange: trunk/reactos/dll/win32/kernel32_vista/DllMain.c ------------------------------------------------------------------------------ svn:eol-style = native
Propchange: trunk/reactos/dll/win32/kernel32_vista/DllMain.c ------------------------------------------------------------------------------ svn:mime-type = text/plain
Added: trunk/reactos/dll/win32/kernel32_vista/GetTickCount64.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32_vista/Ge... ============================================================================== --- trunk/reactos/dll/win32/kernel32_vista/GetTickCount64.c (added) +++ trunk/reactos/dll/win32/kernel32_vista/GetTickCount64.c [iso-8859-1] Thu Sep 25 18:25:47 2014 @@ -0,0 +1,25 @@ + +#include "k32_vista.h" + +/* + * @implemented + */ +ULONGLONG +WINAPI +GetTickCount64(VOID) +{ + ULARGE_INTEGER TickCount; + + while (TRUE) + { + TickCount.HighPart = (ULONG)SharedUserData->TickCount.High1Time; + TickCount.LowPart = SharedUserData->TickCount.LowPart; + + if (TickCount.HighPart == (ULONG)SharedUserData->TickCount.High2Time) break; + + YieldProcessor(); + } + + return (UInt32x32To64(TickCount.LowPart, SharedUserData->TickCountMultiplier) >> 24) + + (UInt32x32To64(TickCount.HighPart, SharedUserData->TickCountMultiplier) << 8); +}
Propchange: trunk/reactos/dll/win32/kernel32_vista/GetTickCount64.c ------------------------------------------------------------------------------ charset = UTF-8
Propchange: trunk/reactos/dll/win32/kernel32_vista/GetTickCount64.c ------------------------------------------------------------------------------ svn:eol-style = native
Propchange: trunk/reactos/dll/win32/kernel32_vista/GetTickCount64.c ------------------------------------------------------------------------------ svn:mime-type = text/plain
Added: trunk/reactos/dll/win32/kernel32_vista/k32_vista.h URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32_vista/k3... ============================================================================== --- trunk/reactos/dll/win32/kernel32_vista/k32_vista.h (added) +++ trunk/reactos/dll/win32/kernel32_vista/k32_vista.h [iso-8859-1] Thu Sep 25 18:25:47 2014 @@ -0,0 +1,11 @@ + +#pragma once + +/* PSDK/NDK Headers */ +#define WIN32_NO_STATUS +#include <windef.h> +#include <winbase.h> + +#include <ndk/kefuncs.h> +#include <ndk/psfuncs.h> +
Propchange: trunk/reactos/dll/win32/kernel32_vista/k32_vista.h ------------------------------------------------------------------------------ charset = UTF-8
Propchange: trunk/reactos/dll/win32/kernel32_vista/k32_vista.h ------------------------------------------------------------------------------ svn:eol-style = native
Propchange: trunk/reactos/dll/win32/kernel32_vista/k32_vista.h ------------------------------------------------------------------------------ svn:mime-type = text/plain
Added: trunk/reactos/dll/win32/kernel32_vista/kernel32_vista.spec URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/kernel32_vista/ke... ============================================================================== --- trunk/reactos/dll/win32/kernel32_vista/kernel32_vista.spec (added) +++ trunk/reactos/dll/win32/kernel32_vista/kernel32_vista.spec [iso-8859-1] Thu Sep 25 18:25:47 2014 @@ -0,0 +1,2 @@ + +@ stdcall -ret64 GetTickCount64(void)
Propchange: trunk/reactos/dll/win32/kernel32_vista/kernel32_vista.spec ------------------------------------------------------------------------------ svn:eol-style = native
Modified: trunk/reactos/dll/win32/msi/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/msi/CMakeLists.tx... ============================================================================== --- trunk/reactos/dll/win32/msi/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/dll/win32/msi/CMakeLists.txt [iso-8859-1] Thu Sep 25 18:25:47 2014 @@ -83,6 +83,7 @@ #fixme : should be in delayed imports imagehlp msvcrt + kernel32_vista kernel32 ntdll)
Modified: trunk/reactos/dll/win32/pdh/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/pdh/CMakeLists.tx... ============================================================================== --- trunk/reactos/dll/win32/pdh/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/dll/win32/pdh/CMakeLists.txt [iso-8859-1] Thu Sep 25 18:25:47 2014 @@ -14,5 +14,5 @@ add_library(pdh SHARED ${SOURCE}) set_module_type(pdh win32dll) target_link_libraries(pdh wine) -add_importlibs(pdh msvcrt kernel32 ntdll) +add_importlibs(pdh msvcrt kernel32_vista kernel32 ntdll) add_cd_file(TARGET pdh DESTINATION reactos/system32 FOR all)
Modified: trunk/reactos/dll/win32/snmpapi/CMakeLists.txt URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/snmpapi/CMakeList... ============================================================================== --- trunk/reactos/dll/win32/snmpapi/CMakeLists.txt [iso-8859-1] (original) +++ trunk/reactos/dll/win32/snmpapi/CMakeLists.txt [iso-8859-1] Thu Sep 25 18:25:47 2014 @@ -14,5 +14,5 @@ add_library(snmpapi SHARED ${SOURCE} snmpapi.rc) set_module_type(snmpapi win32dll) target_link_libraries(snmpapi wine) -add_importlibs(snmpapi msvcrt kernel32 ntdll) +add_importlibs(snmpapi msvcrt kernel32_vista kernel32 ntdll) add_cd_file(TARGET snmpapi DESTINATION reactos/system32 FOR all)