mirror of
https://github.com/reactos/reactos
synced 2025-10-05 16:02:58 +02:00
[SDK][KernelBase][Kernel32] Build Wine-10.0 kernelbase
This commit is contained in:
@@ -138,6 +138,7 @@
|
||||
@ stdcall KiUserExceptionDispatcher(ptr ptr)
|
||||
@ stdcall -version=0x502 LdrAccessOutOfProcessResource(ptr ptr ptr ptr ptr)
|
||||
@ stdcall LdrAccessResource(ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ LdrAddDllDirectory(ptr ptr)
|
||||
@ stdcall -stub -version=0x600+ LdrAddLoadAsDataTable(ptr wstr long ptr)
|
||||
@ stdcall LdrAddRefDll(long ptr)
|
||||
@ stdcall -version=0x502 LdrAlternateResourcesEnabled()
|
||||
@@ -152,6 +153,7 @@
|
||||
@ stdcall -stub LdrFindResourceEx_U(ptr ptr ptr ptr ptr) ; 5.1 and higher
|
||||
@ stdcall LdrFindResource_U(ptr ptr long ptr)
|
||||
@ stdcall LdrFlushAlternateResourceModules()
|
||||
@ stdcall -version=0x601+ LdrGetDllDirectory(ptr)
|
||||
@ stdcall LdrGetDllHandle(wstr ptr ptr ptr)
|
||||
@ stdcall LdrGetDllHandleEx(long wstr ptr ptr ptr)
|
||||
@ stdcall -stub -version=0x600+ LdrGetFailureData()
|
||||
@@ -175,12 +177,15 @@
|
||||
@ stdcall -stub -version=0x600+ LdrQueryModuleServiceTags(ptr ptr ptr)
|
||||
@ stdcall LdrQueryProcessModuleInformation(ptr long ptr)
|
||||
@ stdcall -version=0x600+ LdrRegisterDllNotification(long ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ LdrRemoveDllDirectory(ptr)
|
||||
@ stdcall -stub -version=0x600+ LdrRemoveLoadAsDataTable(ptr ptr ptr long)
|
||||
@ stdcall -stub -version=0x600+ LdrResFindResource(ptr long long long long long long long long)
|
||||
@ stdcall -stub -version=0x600+ LdrResFindResourceDirectory(ptr long long long long long long)
|
||||
@ stdcall -stub -version=0x600+ LdrResRelease(ptr ptr long long)
|
||||
@ stdcall -stub -version=0x600+ LdrResSearchResource(wstr wstr long long long ptr long long)
|
||||
@ stdcall LdrSetAppCompatDllRedirectionCallback(long ptr ptr)
|
||||
@ stdcall -version=0x601+ LdrSetDefaultDllDirectories(long)
|
||||
@ stdcall -version=0x601+ LdrSetDllDirectory(ptr)
|
||||
@ stdcall LdrSetDllManifestProber(ptr)
|
||||
@ stdcall -stub -version=0x600+ LdrSetMUICacheType(long)
|
||||
@ stdcall LdrShutdownProcess()
|
||||
@@ -1207,8 +1212,8 @@
|
||||
@ stdcall RtlTraceDatabaseUnlock(ptr)
|
||||
@ stdcall RtlTraceDatabaseValidate(ptr)
|
||||
@ stdcall -stub -version=0x600+ RtlTryAcquirePebLock()
|
||||
@ stdcall -version=0x601 RtlTryAcquireSRWLockExclusive(ptr)
|
||||
@ stdcall -version=0x601 RtlTryAcquireSRWLockShared(ptr)
|
||||
@ stdcall -version=0x601+ RtlTryAcquireSRWLockExclusive(ptr)
|
||||
@ stdcall -version=0x601+ RtlTryAcquireSRWLockShared(ptr)
|
||||
@ stdcall RtlTryEnterCriticalSection(ptr)
|
||||
@ stdcall RtlUnhandledExceptionFilter2(ptr long)
|
||||
@ stdcall RtlUnhandledExceptionFilter(ptr)
|
||||
|
@@ -1,5 +1,8 @@
|
||||
#include "ntdll_vista.h"
|
||||
|
||||
VOID NTAPI
|
||||
RtlpInitializeThreadPooling();
|
||||
|
||||
BOOL
|
||||
WINAPI
|
||||
DllMain(HANDLE hDll,
|
||||
@@ -10,6 +13,7 @@ DllMain(HANDLE hDll,
|
||||
{
|
||||
LdrDisableThreadCalloutsForDll(hDll);
|
||||
RtlpInitializeKeyedEvent();
|
||||
RtlpInitializeThreadPooling();
|
||||
}
|
||||
else if (dwReason == DLL_PROCESS_DETACH)
|
||||
{
|
||||
|
@@ -1,3 +1,37 @@
|
||||
#include "ntdll_vista.h"
|
||||
|
||||
PVOID LdrpHeap;
|
||||
#include <debug.h>
|
||||
|
||||
|
||||
/* These APIs are very commonly used in modern apps + needed for kernelbase, But these stubs will work for now. */
|
||||
NTSTATUS WINAPI LdrGetDllDirectory( UNICODE_STRING *dir )
|
||||
{
|
||||
UNIMPLEMENTED;
|
||||
return STATUS_UNSUCCESSFUL;
|
||||
}
|
||||
|
||||
|
||||
NTSTATUS WINAPI LdrSetDllDirectory( const UNICODE_STRING *dir )
|
||||
{
|
||||
UNIMPLEMENTED;
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI LdrAddDllDirectory( const UNICODE_STRING *dir, void **cookie )
|
||||
{
|
||||
UNIMPLEMENTED;
|
||||
return STATUS_UNSUCCESSFUL;
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI LdrRemoveDllDirectory( void *cookie )
|
||||
{
|
||||
UNIMPLEMENTED;
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI LdrSetDefaultDllDirectories( ULONG flags )
|
||||
{
|
||||
UNIMPLEMENTED;
|
||||
return STATUS_SUCCESS;
|
||||
}
|
@@ -18,3 +18,44 @@
|
||||
|
||||
@ stdcall RtlConnectToSm(ptr ptr long ptr) SmConnectToSm
|
||||
@ stdcall RtlSendMsgToSm(ptr ptr) SmSendMsgToSm
|
||||
|
||||
@ stdcall TpAllocCleanupGroup(ptr)
|
||||
@ stdcall TpAllocIoCompletion(ptr ptr ptr ptr ptr)
|
||||
@ stdcall TpAllocPool(ptr ptr)
|
||||
@ stdcall TpAllocTimer(ptr ptr ptr ptr)
|
||||
@ stdcall TpAllocWait(ptr ptr ptr ptr)
|
||||
@ stdcall TpAllocWork(ptr ptr ptr ptr)
|
||||
@ stdcall TpCallbackLeaveCriticalSectionOnCompletion(ptr ptr)
|
||||
@ stdcall TpCallbackMayRunLong(ptr)
|
||||
@ stdcall TpCallbackReleaseMutexOnCompletion(ptr ptr)
|
||||
@ stdcall TpCallbackReleaseSemaphoreOnCompletion(ptr ptr long)
|
||||
@ stdcall TpCallbackSetEventOnCompletion(ptr ptr)
|
||||
@ stdcall TpCallbackUnloadDllOnCompletion(ptr ptr)
|
||||
@ stdcall TpCancelAsyncIoOperation(ptr)
|
||||
@ stdcall TpDisassociateCallback(ptr)
|
||||
@ stdcall TpIsTimerSet(ptr)
|
||||
@ stdcall TpPostWork(ptr)
|
||||
@ stdcall TpQueryPoolStackInformation(ptr ptr)
|
||||
@ stdcall TpReleaseCleanupGroup(ptr)
|
||||
@ stdcall TpReleaseCleanupGroupMembers(ptr long ptr)
|
||||
@ stdcall TpReleaseIoCompletion(ptr)
|
||||
@ stdcall TpReleasePool(ptr)
|
||||
@ stdcall TpReleaseTimer(ptr)
|
||||
@ stdcall TpReleaseWait(ptr)
|
||||
@ stdcall TpReleaseWork(ptr)
|
||||
@ stdcall TpSetPoolMaxThreads(ptr long)
|
||||
@ stdcall TpSetPoolMinThreads(ptr long)
|
||||
@ stdcall TpSetPoolStackInformation(ptr ptr)
|
||||
@ stdcall TpSetTimer(ptr ptr long long)
|
||||
@ stdcall TpSetWait(ptr long ptr)
|
||||
@ stdcall TpSimpleTryPost(ptr ptr ptr)
|
||||
@ stdcall TpStartAsyncIoOperation(ptr)
|
||||
@ stdcall TpWaitForIoCompletion(ptr long)
|
||||
@ stdcall TpWaitForTimer(ptr long)
|
||||
@ stdcall TpWaitForWait(ptr long)
|
||||
@ stdcall TpWaitForWork(ptr long)
|
||||
@ stdcall LdrAddDllDirectory(ptr ptr)
|
||||
@ stdcall LdrSetDllDirectory(ptr)
|
||||
@ stdcall LdrGetDllDirectory(ptr)
|
||||
@ stdcall LdrRemoveDllDirectory(ptr)
|
||||
@ stdcall LdrSetDefaultDllDirectories(long)
|
||||
|
11
dll/win32/KernelBase/notes
Normal file
11
dll/win32/KernelBase/notes
Normal file
@@ -0,0 +1,11 @@
|
||||
wine/actctx.c - ours is better
|
||||
wine/comm.c ? maybe syncable
|
||||
wine/lzexpand.c syncable - Kernel32
|
||||
wine/profile.c syncable - kernel32
|
||||
wine/res.c - loader.c - kernelbase
|
||||
wine/timezone.c ?
|
||||
winnls/string/fold.c <-Locale - unsyncable until we have more kernel apis
|
||||
winnls/string/format_msg.c <- Locale - unsyncable until we have more kernel apis
|
||||
winnls/string/lcformat.c <- Locale - unsyncable until we have more kernel apis
|
||||
winnls/string/locale.c <- Locale - unsyncable until we have more kernel apis
|
||||
winnls/string/sortkey.c <- Locale - unsyncable until we have more kernel apis
|
@@ -39,9 +39,22 @@ endif()
|
||||
|
||||
list(APPEND SOURCE_STATIC
|
||||
#console.c #looks like ReactOS console.c is nothing like wine.
|
||||
debug.c
|
||||
file.c
|
||||
loader.c
|
||||
main.c
|
||||
memory.c
|
||||
process.c
|
||||
# registry.c use advapi32 lib instead for now.
|
||||
security.c
|
||||
string.c
|
||||
sync.c
|
||||
thread.c
|
||||
version.c #mostly Version.dll
|
||||
volume.c
|
||||
)
|
||||
|
||||
add_library(kernelbase_static ${SOURCE_PATH})
|
||||
add_library(kernelbase_static ${SOURCE_STATIC})
|
||||
target_link_libraries(kernelbase_static kernelbase_path psapi_static ${PSEH_LIB})
|
||||
add_dependencies(kernelbase_static psdk)
|
||||
|
||||
|
@@ -49,6 +49,7 @@ static PTOP_LEVEL_EXCEPTION_FILTER top_filter;
|
||||
|
||||
void *dummy = RtlUnwind; /* force importing RtlUnwind from ntdll */
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* CheckRemoteDebuggerPresent (kernelbase.@)
|
||||
*/
|
||||
@@ -768,7 +769,7 @@ LONG WINAPI UnhandledExceptionFilter( EXCEPTION_POINTERS *epointers )
|
||||
return EXCEPTION_CONTINUE_SEARCH;
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
/***********************************************************************
|
||||
* WerGetFlags (kernelbase.@)
|
||||
*/
|
||||
@@ -849,7 +850,7 @@ HRESULT WINAPI /* DECLSPEC_HOTPATCH */ WerUnregisterRuntimeExceptionModule( cons
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* psapi functions
|
||||
***********************************************************************/
|
||||
@@ -1669,7 +1670,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH GetWsChanges( HANDLE process, PSAPI_WS_WATCH_INFOR
|
||||
TRACE( "(%p, %p, %ld)\n", process, info, size );
|
||||
return set_ntstatus( NtQueryInformationProcess( process, ProcessWorkingSetWatch, info, size, NULL ));
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* GetWsChangesEx (kernelbase.@)
|
||||
@@ -1684,6 +1685,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH GetWsChangesEx( HANDLE process, PSAPI_WS_WATCH_INF
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* InitializeProcessForWsWatch (kernelbase.@)
|
||||
* K32InitializeProcessForWsWatch (kernelbase.@)
|
||||
@@ -1694,7 +1696,6 @@ BOOL WINAPI /* DECLSPEC_HOTPATCH */ InitializeProcessForWsWatch( HANDLE process
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* QueryWorkingSet (kernelbase.@)
|
||||
* K32QueryWorkingSet (kernelbase.@)
|
||||
@@ -1718,7 +1719,6 @@ BOOL WINAPI QueryWorkingSetEx( HANDLE process, void *buffer, DWORD size )
|
||||
buffer, size, NULL ));
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************
|
||||
* QueryFullProcessImageNameA (kernelbase.@)
|
||||
*/
|
||||
@@ -1818,3 +1818,4 @@ cleanup:
|
||||
HeapFree( GetProcessHeap(), 0, dynamic_buffer );
|
||||
return set_ntstatus( status );
|
||||
}
|
||||
#endif
|
@@ -34,8 +34,10 @@
|
||||
#include "wincon.h"
|
||||
#include "fileapi.h"
|
||||
#include "shlwapi.h"
|
||||
#ifndef __REACTOS__
|
||||
#include "ddk/ntddk.h"
|
||||
#include "ddk/ntddser.h"
|
||||
#endif
|
||||
#include "ioringapi.h"
|
||||
|
||||
#include "kernelbase.h"
|
||||
@@ -476,7 +478,7 @@ static BOOL is_same_file( HANDLE h1, HANDLE h2 )
|
||||
!memcmp( &id1.ObjectId, &id2.ObjectId, sizeof(id1.ObjectId) ));
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/******************************************************************************
|
||||
* AreFileApisANSI (kernelbase.@)
|
||||
*/
|
||||
@@ -484,6 +486,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH AreFileApisANSI(void)
|
||||
{
|
||||
return !oem_file_apis;
|
||||
}
|
||||
#endif
|
||||
|
||||
/******************************************************************************
|
||||
* copy_file
|
||||
@@ -602,7 +605,7 @@ HRESULT WINAPI CopyFile2( const WCHAR *source, const WCHAR *dest, COPYFILE2_EXTE
|
||||
return copy_file(source, dest, params) ? S_OK : HRESULT_FROM_WIN32(GetLastError());
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* CopyFileExW (kernelbase.@)
|
||||
*/
|
||||
@@ -690,7 +693,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH CreateDirectoryExW( LPCWSTR template, LPCWSTR path
|
||||
{
|
||||
return CreateDirectoryW( path, sa );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/*************************************************************************
|
||||
* CreateFile2 (kernelbase.@)
|
||||
@@ -734,6 +737,7 @@ HANDLE WINAPI DECLSPEC_HOTPATCH CreateFile2( LPCWSTR name, DWORD access, DWORD s
|
||||
return CreateFileW( name, access, sharing, sa, creation, flags | attributes, template );
|
||||
}
|
||||
|
||||
#ifndef __REACTOS__
|
||||
|
||||
/*************************************************************************
|
||||
* CreateFileA (kernelbase.@)
|
||||
@@ -2997,7 +3001,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH CancelIo( HANDLE handle )
|
||||
|
||||
return set_ntstatus( NtCancelIoFile( handle, &io ) );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* CancelIoEx (kernelbase.@)
|
||||
@@ -3005,11 +3009,14 @@ BOOL WINAPI DECLSPEC_HOTPATCH CancelIo( HANDLE handle )
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH CancelIoEx( HANDLE handle, LPOVERLAPPED overlapped )
|
||||
{
|
||||
IO_STATUS_BLOCK io;
|
||||
|
||||
#ifdef __REACTOS__
|
||||
return set_ntstatus( NtCancelIoFile( handle, &io ) );
|
||||
#else
|
||||
return set_ntstatus( NtCancelIoFileEx( handle, (PIO_STATUS_BLOCK)overlapped, &io ) );
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* CancelSynchronousIo (kernelbase.@)
|
||||
*/
|
||||
@@ -3662,7 +3669,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH SetEndOfFile( HANDLE file )
|
||||
}
|
||||
return set_ntstatus( status );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* SetFileInformationByHandle (kernelbase.@)
|
||||
@@ -3741,7 +3748,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH SetFileInformationByHandle( HANDLE file, FILE_INFO
|
||||
return set_ntstatus( status );
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* SetFilePointer (kernelbase.@)
|
||||
*/
|
||||
@@ -4592,7 +4599,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH WaitCommEvent( HANDLE handle, DWORD *events, OVERL
|
||||
return DeviceIoControl( handle, IOCTL_SERIAL_WAIT_ON_MASK, NULL, 0, events, sizeof(*events),
|
||||
NULL, overlapped );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* QueryIoRingCapabilities (kernelbase.@)
|
||||
|
@@ -28,7 +28,9 @@
|
||||
#include "winbase.h"
|
||||
#include "winnls.h"
|
||||
#include "winternl.h"
|
||||
#ifndef __REACTOS__
|
||||
#include "ddk/ntddk.h"
|
||||
#endif
|
||||
#include "kernelbase.h"
|
||||
#include "wine/list.h"
|
||||
#include "wine/asm.h"
|
||||
@@ -60,6 +62,7 @@ static CRITICAL_SECTION exclusive_datafile_list_section = { &critsect_debug, -1,
|
||||
* Modules
|
||||
***********************************************************************/
|
||||
|
||||
#ifndef __REACTOS__ // Let use the reactos implementation of this
|
||||
|
||||
/******************************************************************
|
||||
* get_proc_address
|
||||
@@ -492,12 +495,19 @@ FARPROC WINAPI DECLSPEC_HOTPATCH GetProcAddress( HMODULE module, LPCSTR function
|
||||
|
||||
#endif /* __x86_64__ */
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* IsApiSetImplemented (kernelbase.@)
|
||||
*/
|
||||
BOOL WINAPI IsApiSetImplemented( LPCSTR name )
|
||||
{
|
||||
#ifdef __REACTOS__
|
||||
return TRUE;
|
||||
/*
|
||||
* ReactOS always has API sets on now?
|
||||
*/
|
||||
#else
|
||||
UNICODE_STRING str;
|
||||
NTSTATUS status;
|
||||
BOOLEAN in_schema, present;
|
||||
@@ -506,8 +516,10 @@ BOOL WINAPI IsApiSetImplemented( LPCSTR name )
|
||||
status = ApiSetQueryApiSetPresenceEx( &str, &in_schema, &present );
|
||||
RtlFreeUnicodeString( &str );
|
||||
return !status && present;
|
||||
#endif
|
||||
}
|
||||
|
||||
#ifndef __REACTOS__
|
||||
|
||||
/***********************************************************************
|
||||
* LoadLibraryA (kernelbase.@)
|
||||
@@ -566,6 +578,7 @@ HMODULE WINAPI DECLSPEC_HOTPATCH LoadLibraryExW( LPCWSTR name, HANDLE file, DWOR
|
||||
return module;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* LoadPackagedLibrary (kernelbase.@)
|
||||
@@ -932,7 +945,7 @@ done:
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/**********************************************************************
|
||||
* EnumResourceNamesW (kernelbase.@)
|
||||
*/
|
||||
@@ -941,7 +954,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH EnumResourceNamesW( HMODULE module, LPCWSTR type,
|
||||
{
|
||||
return EnumResourceNamesExW( module, type, func, param, 0, 0 );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/**********************************************************************
|
||||
* EnumResourceTypesExA (kernelbase.@)
|
||||
@@ -1045,7 +1058,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH EnumResourceTypesExW( HMODULE module, ENUMRESTYPEP
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/**********************************************************************
|
||||
* FindResourceExW (kernelbase.@)
|
||||
*/
|
||||
@@ -1221,7 +1234,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH GetCurrentActCtx( HANDLE *pcontext )
|
||||
return set_ntstatus( RtlGetActiveActivationContext( pcontext ));
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
/***********************************************************************
|
||||
* QueryActCtxSettingsW (kernelbase.@)
|
||||
*/
|
||||
@@ -1232,8 +1245,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH QueryActCtxSettingsW( DWORD flags, HANDLE ctx, con
|
||||
return set_ntstatus( RtlQueryActivationContextApplicationSettings( flags, ctx, ns, settings,
|
||||
buffer, size, written ));
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* QueryActCtxW (kernelbase.@)
|
||||
*/
|
||||
@@ -1261,3 +1273,4 @@ BOOL WINAPI DECLSPEC_HOTPATCH ZombifyActCtx( HANDLE context )
|
||||
{
|
||||
return set_ntstatus( RtlZombifyActivationContext( context ));
|
||||
}
|
||||
#endif
|
||||
|
@@ -24,7 +24,9 @@
|
||||
#include "windows.h"
|
||||
#include "appmodel.h"
|
||||
#include "shlwapi.h"
|
||||
#ifndef __REACTOS__
|
||||
#include "perflib.h"
|
||||
#endif
|
||||
#include "winternl.h"
|
||||
|
||||
#include "wine/debug.h"
|
||||
@@ -34,9 +36,13 @@
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(kernelbase);
|
||||
|
||||
#ifdef __REACTOS__
|
||||
const GUID IID_IUnknown = {0x00000000, 0x0000, 0x0000, {0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x46}};
|
||||
#endif
|
||||
|
||||
BOOL is_wow64 = FALSE;
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* DllMain
|
||||
*/
|
||||
@@ -47,40 +53,17 @@ BOOL WINAPI DllMain( HINSTANCE hinst, DWORD reason, LPVOID reserved )
|
||||
DisableThreadLibraryCalls( hinst );
|
||||
IsWow64Process( GetCurrentProcess(), &is_wow64 );
|
||||
init_global_data();
|
||||
init_locale( hinst );
|
||||
// init_locale( hinst );
|
||||
init_startup_info( NtCurrentTeb()->Peb->ProcessParameters );
|
||||
#ifndef __REACTOS__
|
||||
init_console();
|
||||
#endif
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* MulDiv (kernelbase.@)
|
||||
*/
|
||||
INT WINAPI MulDiv( INT a, INT b, INT c )
|
||||
{
|
||||
LONGLONG ret;
|
||||
|
||||
if (!c) return -1;
|
||||
|
||||
/* We want to deal with a positive divisor to simplify the logic. */
|
||||
if (c < 0)
|
||||
{
|
||||
a = -a;
|
||||
c = -c;
|
||||
}
|
||||
|
||||
/* If the result is positive, we "add" to round. else, we subtract to round. */
|
||||
if ((a < 0 && b < 0) || (a >= 0 && b >= 0))
|
||||
ret = (((LONGLONG)a * b) + (c / 2)) / c;
|
||||
else
|
||||
ret = (((LONGLONG)a * b) - (c / 2)) / c;
|
||||
|
||||
if (ret > 2147483647 || ret < -2147483647) return -1;
|
||||
return ret;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* AppPolicyGetMediaFoundationCodecLoading (KERNELBASE.@)
|
||||
*/
|
||||
@@ -147,34 +130,8 @@ LONG WINAPI AppPolicyGetWindowingModel(HANDLE token, AppPolicyWindowingModel *po
|
||||
return ERROR_SUCCESS;
|
||||
}
|
||||
|
||||
struct counterset_template
|
||||
{
|
||||
PERF_COUNTERSET_INFO counterset;
|
||||
PERF_COUNTER_INFO counter[1];
|
||||
};
|
||||
|
||||
struct counterset_instance
|
||||
{
|
||||
struct list entry;
|
||||
struct counterset_template *template;
|
||||
PERF_COUNTERSET_INSTANCE instance;
|
||||
};
|
||||
|
||||
struct perf_provider
|
||||
{
|
||||
GUID guid;
|
||||
PERFLIBREQUEST callback;
|
||||
struct counterset_template **countersets;
|
||||
unsigned int counterset_count;
|
||||
|
||||
struct list instance_list;
|
||||
};
|
||||
|
||||
static struct perf_provider *perf_provider_from_handle(HANDLE prov)
|
||||
{
|
||||
return (struct perf_provider *)prov;
|
||||
}
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* PerfCreateInstance (KERNELBASE.@)
|
||||
*/
|
||||
@@ -395,7 +352,7 @@ ULONG WINAPI PerfStopProvider(HANDLE handle)
|
||||
heap_free( prov );
|
||||
return STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
#endif
|
||||
/***********************************************************************
|
||||
* QuirkIsEnabled (KERNELBASE.@)
|
||||
*/
|
||||
|
@@ -22,17 +22,19 @@
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <limits.h>
|
||||
#ifndef __REACTOS__
|
||||
#include <sys/types.h>
|
||||
|
||||
#include "ntstatus.h"
|
||||
#endif
|
||||
#define WIN32_NO_STATUS
|
||||
#include "windef.h"
|
||||
#include "winbase.h"
|
||||
#include "winnls.h"
|
||||
#include "winternl.h"
|
||||
#ifndef __REACTOS__
|
||||
#include "winerror.h"
|
||||
#include "ddk/wdm.h"
|
||||
|
||||
#endif
|
||||
#include "kernelbase.h"
|
||||
#include "wine/exception.h"
|
||||
#include "wine/debug.h"
|
||||
@@ -41,7 +43,11 @@ WINE_DEFAULT_DEBUG_CHANNEL(heap);
|
||||
WINE_DECLARE_DEBUG_CHANNEL(virtual);
|
||||
WINE_DECLARE_DEBUG_CHANNEL(globalmem);
|
||||
|
||||
|
||||
#ifdef __REACTOS__
|
||||
#define STATUS_INFO_LENGTH_MISMATCH ((NTSTATUS)0xC0000004)
|
||||
#define STATUS_BUFFER_TOO_SMALL ((NTSTATUS)0xC0000023L)
|
||||
#endif
|
||||
#ifndef __REACTOS__
|
||||
|
||||
static CROSS_PROCESS_WORK_LIST *open_cross_process_connection( HANDLE process )
|
||||
{
|
||||
@@ -1442,7 +1448,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH GetLogicalProcessorInformation( SYSTEM_LOGICAL_PRO
|
||||
if (status == STATUS_INFO_LENGTH_MISMATCH) status = STATUS_BUFFER_TOO_SMALL;
|
||||
return set_ntstatus( status );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* GetLogicalProcessorInformationEx (kernelbase.@)
|
||||
@@ -1457,13 +1463,17 @@ BOOL WINAPI DECLSPEC_HOTPATCH GetLogicalProcessorInformationEx( LOGICAL_PROCESSO
|
||||
SetLastError( ERROR_INVALID_PARAMETER );
|
||||
return FALSE;
|
||||
}
|
||||
#ifdef __REACTOS__
|
||||
status = NtQuerySystemInformation( SystemLogicalProcessorInformationEx, buffer, *len, len ); //NtQuerySystemInformationEx is required.
|
||||
#else
|
||||
status = NtQuerySystemInformationEx( SystemLogicalProcessorInformationEx, &relationship,
|
||||
sizeof(relationship), buffer, *len, len );
|
||||
#endif
|
||||
if (status == STATUS_INFO_LENGTH_MISMATCH) status = STATUS_BUFFER_TOO_SMALL;
|
||||
return set_ntstatus( status );
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* GetSystemCpuSetInformation (kernelbase.@)
|
||||
*/
|
||||
@@ -1830,3 +1840,4 @@ UINT WINAPI GetSystemFirmwareTable( DWORD provider, DWORD id, void *buffer, DWOR
|
||||
|
||||
return get_firmware_table( provider, SystemFirmwareTable_Get, id, buffer, size );
|
||||
}
|
||||
#endif
|
@@ -31,13 +31,15 @@
|
||||
|
||||
#include "kernelbase.h"
|
||||
#include "wine/debug.h"
|
||||
#ifndef __REACTOS__
|
||||
#include "wine/condrv.h"
|
||||
#endif
|
||||
|
||||
WINE_DEFAULT_DEBUG_CHANNEL(process);
|
||||
|
||||
static DWORD shutdown_flags = 0;
|
||||
static DWORD shutdown_priority = 0x280;
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* Processes
|
||||
***********************************************************************/
|
||||
@@ -233,6 +235,8 @@ static RTL_USER_PROCESS_PARAMETERS *create_process_params( const WCHAR *filename
|
||||
if (envW != env) RtlFreeHeap( GetProcessHeap(), 0, envW );
|
||||
return params;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
struct proc_thread_attr
|
||||
{
|
||||
@@ -251,6 +255,7 @@ struct _PROC_THREAD_ATTRIBUTE_LIST
|
||||
struct proc_thread_attr attrs[1];
|
||||
};
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* create_nt_process
|
||||
*/
|
||||
@@ -838,7 +843,7 @@ DWORD WINAPI DECLSPEC_HOTPATCH GetPriorityClass( HANDLE process )
|
||||
default: return 0;
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* GetProcessGroupAffinity (kernelbase.@)
|
||||
@@ -850,6 +855,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH GetProcessGroupAffinity( HANDLE process, USHORT *c
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
#ifndef __REACTOS__
|
||||
|
||||
/******************************************************************
|
||||
* GetProcessHandleCount (kernelbase.@)
|
||||
@@ -1742,6 +1748,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH SetEnvironmentVariableW( LPCWSTR name, LPCWSTR val
|
||||
return set_ntstatus( status );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* Process/thread attribute lists
|
||||
@@ -1868,5 +1875,9 @@ void WINAPI DECLSPEC_HOTPATCH DeleteProcThreadAttributeList( struct _PROC_THREAD
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH CompareObjectHandles( HANDLE first, HANDLE second )
|
||||
{
|
||||
#ifndef __REACTOS__
|
||||
return set_ntstatus( NtCompareObjects( first, second ));
|
||||
#else
|
||||
return FALSE; //NtCompareObjects is not implemented in ReactOS
|
||||
#endif
|
||||
}
|
||||
|
@@ -29,7 +29,10 @@
|
||||
#include "winerror.h"
|
||||
#include "winternl.h"
|
||||
#include "winioctl.h"
|
||||
#ifdef __REACTOS__
|
||||
#else
|
||||
#include "ddk/ntddk.h"
|
||||
#endif
|
||||
|
||||
#include "kernelbase.h"
|
||||
#include "wine/debug.h"
|
||||
@@ -721,9 +724,6 @@ BOOL WINAPI GetTokenInformation( HANDLE token, TOKEN_INFORMATION_CLASS class,
|
||||
(class == TokenGroupsAndPrivileges) ? "TokenGroupsAndPrivileges" :
|
||||
(class == TokenSessionReference) ? "TokenSessionReference" :
|
||||
(class == TokenSandBoxInert) ? "TokenSandBoxInert" :
|
||||
(class == TokenElevation) ? "TokenElevation" :
|
||||
(class == TokenElevationType) ? "TokenElevationType" :
|
||||
(class == TokenLinkedToken) ? "TokenLinkedToken" :
|
||||
"Unknown",
|
||||
info, len, retlen);
|
||||
|
||||
|
@@ -31,8 +31,13 @@
|
||||
#include "winnls.h"
|
||||
#include "winternl.h"
|
||||
#include "winioctl.h"
|
||||
#ifdef __REACTOS__
|
||||
#define SystemProcessorIdleCycleTimeInformation 83
|
||||
#define DIRECTORY_TRAVERSE 0x0002
|
||||
#define DIRECTORY_CREATE_OBJECT 0x0004
|
||||
#else
|
||||
#include "ddk/wdm.h"
|
||||
|
||||
#endif
|
||||
#include "kernelbase.h"
|
||||
#include "wine/asm.h"
|
||||
#include "wine/exception.h"
|
||||
@@ -60,7 +65,11 @@ static inline LARGE_INTEGER *get_nt_timeout( LARGE_INTEGER *time, DWORD timeout
|
||||
/***********************************************************************
|
||||
* BaseGetNamedObjectDirectory (kernelbase.@)
|
||||
*/
|
||||
#ifdef __REACTOS__
|
||||
NTSTATUS WINAPI BaseGetNamedObjectDirectory_Base( HANDLE *dir )
|
||||
#else
|
||||
NTSTATUS WINAPI BaseGetNamedObjectDirectory( HANDLE *dir )
|
||||
#endif
|
||||
{
|
||||
static HANDLE handle;
|
||||
WCHAR buffer[64];
|
||||
@@ -71,9 +80,13 @@ NTSTATUS WINAPI BaseGetNamedObjectDirectory( HANDLE *dir )
|
||||
if (!handle)
|
||||
{
|
||||
HANDLE dir;
|
||||
|
||||
#ifdef __REACTOS__
|
||||
swprintf( buffer, L"\\Sessions\\%u\\BaseNamedObjects",
|
||||
NtCurrentTeb()->Peb->SessionId );
|
||||
#else
|
||||
swprintf( buffer, ARRAY_SIZE(buffer), L"\\Sessions\\%u\\BaseNamedObjects",
|
||||
NtCurrentTeb()->Peb->SessionId );
|
||||
#endif
|
||||
RtlInitUnicodeString( &str, buffer );
|
||||
InitializeObjectAttributes(&attr, &str, 0, 0, NULL);
|
||||
status = NtOpenDirectoryObject( &dir, DIRECTORY_CREATE_OBJECT|DIRECTORY_TRAVERSE, &attr );
|
||||
@@ -100,7 +113,11 @@ static void get_create_object_attributes( OBJECT_ATTRIBUTES *attr, UNICODE_STRIN
|
||||
{
|
||||
RtlInitUnicodeString( nameW, name );
|
||||
attr->ObjectName = nameW;
|
||||
#ifdef __REACTOS__
|
||||
BaseGetNamedObjectDirectory_Base( &attr->RootDirectory );
|
||||
#else
|
||||
BaseGetNamedObjectDirectory( &attr->RootDirectory );
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
@@ -115,12 +132,17 @@ static BOOL get_open_object_attributes( OBJECT_ATTRIBUTES *attr, UNICODE_STRING
|
||||
return FALSE;
|
||||
}
|
||||
RtlInitUnicodeString( nameW, name );
|
||||
#ifdef __REACTOS__
|
||||
BaseGetNamedObjectDirectory_Base( &dir );
|
||||
#else
|
||||
BaseGetNamedObjectDirectory( &dir );
|
||||
#endif
|
||||
InitializeObjectAttributes( attr, nameW, inherit ? OBJ_INHERIT : 0, dir, NULL );
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* Time functions
|
||||
***********************************************************************/
|
||||
@@ -175,7 +197,6 @@ BOOL WINAPI DECLSPEC_HOTPATCH GetSystemTimes( FILETIME *idle, FILETIME *kernel,
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
* GetTickCount (kernelbase.@)
|
||||
*/
|
||||
@@ -203,7 +224,6 @@ ULONGLONG WINAPI DECLSPEC_HOTPATCH GetTickCount64(void)
|
||||
return (ULONGLONG)high << 32 | low;
|
||||
}
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
* QueryInterruptTime (kernelbase.@)
|
||||
*/
|
||||
@@ -232,7 +252,6 @@ void WINAPI DECLSPEC_HOTPATCH QueryInterruptTimePrecise( ULONGLONG *time )
|
||||
QueryInterruptTime( time );
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* QueryUnbiasedInterruptTimePrecise (kernelbase.@)
|
||||
*/
|
||||
@@ -243,7 +262,7 @@ void WINAPI DECLSPEC_HOTPATCH QueryUnbiasedInterruptTimePrecise( ULONGLONG *time
|
||||
|
||||
RtlQueryUnbiasedInterruptTime( time );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* QueryIdleProcessorCycleTime (kernelbase.@)
|
||||
@@ -263,10 +282,17 @@ BOOL WINAPI QueryIdleProcessorCycleTime( ULONG *size, ULONG64 *times )
|
||||
*/
|
||||
BOOL WINAPI QueryIdleProcessorCycleTimeEx( USHORT group_id, ULONG *size, ULONG64 *times )
|
||||
{
|
||||
#ifndef __REACTOS__
|
||||
ULONG ret_size;
|
||||
NTSTATUS status = NtQuerySystemInformationEx( SystemProcessorIdleCycleTimeInformation, &group_id, sizeof(group_id),
|
||||
times, *size, &ret_size );
|
||||
if (!*size || !status) *size = ret_size;
|
||||
#else
|
||||
ULONG ret_size;
|
||||
NTSTATUS status = NtQuerySystemInformation( SystemProcessorIdleCycleTimeInformation,
|
||||
times, *size, &ret_size );
|
||||
if (!*size || !status) *size = ret_size;
|
||||
#endif
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
@@ -276,6 +302,7 @@ BOOL WINAPI QueryIdleProcessorCycleTimeEx( USHORT group_id, ULONG *size, ULONG64
|
||||
***********************************************************************/
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
static HANDLE normalize_std_handle( HANDLE handle )
|
||||
{
|
||||
if ((handle == (HANDLE)STD_INPUT_HANDLE) ||
|
||||
@@ -453,12 +480,15 @@ BOOL WINAPI DECLSPEC_HOTPATCH WaitForDebugEvent( DEBUG_EVENT *event, DWORD timeo
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
#endif
|
||||
/******************************************************************************
|
||||
* WaitForDebugEventEx (kernelbase.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH WaitForDebugEventEx( DEBUG_EVENT *event, DWORD timeout )
|
||||
{
|
||||
#ifdef __REACTOS__
|
||||
return WaitForDebugEvent(event,timeout);
|
||||
#else
|
||||
NTSTATUS status;
|
||||
LARGE_INTEGER time;
|
||||
DBGUI_WAIT_STATE_CHANGE state;
|
||||
@@ -480,14 +510,20 @@ BOOL WINAPI DECLSPEC_HOTPATCH WaitForDebugEventEx( DEBUG_EVENT *event, DWORD tim
|
||||
return set_ntstatus( status );
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* WaitOnAddress (kernelbase.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH WaitOnAddress( volatile void *addr, void *cmp, SIZE_T size, DWORD timeout )
|
||||
{
|
||||
#ifdef __REACTOS__
|
||||
//TODO: We don't Implement WaitOnAddress
|
||||
__debugbreak();
|
||||
return 0;
|
||||
#else
|
||||
LARGE_INTEGER to;
|
||||
|
||||
if (timeout != INFINITE)
|
||||
@@ -496,6 +532,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH WaitOnAddress( volatile void *addr, void *cmp, SIZ
|
||||
return set_ntstatus( RtlWaitOnAddress( (const void *)addr, cmp, size, &to ));
|
||||
}
|
||||
return set_ntstatus( RtlWaitOnAddress( (const void *)addr, cmp, size, NULL ));
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -531,7 +568,7 @@ HANDLE WINAPI DECLSPEC_HOTPATCH CreateEventW( SECURITY_ATTRIBUTES *sa, BOOL manu
|
||||
return CreateEventExW( sa, name, flags, EVENT_ALL_ACCESS );
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
/***********************************************************************
|
||||
* CreateEventExA (kernelbase.@)
|
||||
*/
|
||||
@@ -585,7 +622,7 @@ HANDLE WINAPI DECLSPEC_HOTPATCH CreateEventExW( SECURITY_ATTRIBUTES *sa, LPCWSTR
|
||||
SetLastError( RtlNtStatusToDosError(status) );
|
||||
return ret;
|
||||
}
|
||||
|
||||
#ifndef __REACTOS__
|
||||
|
||||
/***********************************************************************
|
||||
* OpenEventA (kernelbase.@)
|
||||
@@ -671,7 +708,7 @@ HANDLE WINAPI DECLSPEC_HOTPATCH CreateMutexW( SECURITY_ATTRIBUTES *sa, BOOL owne
|
||||
return CreateMutexExW( sa, name, owner ? CREATE_MUTEX_INITIAL_OWNER : 0, MUTEX_ALL_ACCESS );
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
/***********************************************************************
|
||||
* CreateMutexExA (kernelbase.@)
|
||||
*/
|
||||
@@ -693,7 +730,6 @@ HANDLE WINAPI DECLSPEC_HOTPATCH CreateMutexExA( SECURITY_ATTRIBUTES *sa, LPCSTR
|
||||
return CreateMutexExW( sa, NtCurrentTeb()->StaticUnicodeString.Buffer, flags, access );
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* CreateMutexExW (kernelbase.@)
|
||||
*/
|
||||
@@ -715,7 +751,7 @@ HANDLE WINAPI DECLSPEC_HOTPATCH CreateMutexExW( SECURITY_ATTRIBUTES *sa, LPCWSTR
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* OpenMutexW (kernelbase.@)
|
||||
*/
|
||||
@@ -820,7 +856,7 @@ HANDLE WINAPI DECLSPEC_HOTPATCH CreateWaitableTimerW( SECURITY_ATTRIBUTES *sa, B
|
||||
return CreateWaitableTimerExW( sa, name, manual ? CREATE_WAITABLE_TIMER_MANUAL_RESET : 0,
|
||||
TIMER_ALL_ACCESS );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* CreateWaitableTimerExW (kernelbase.@)
|
||||
@@ -843,7 +879,7 @@ HANDLE WINAPI DECLSPEC_HOTPATCH CreateWaitableTimerExW( SECURITY_ATTRIBUTES *sa,
|
||||
SetLastError( RtlNtStatusToDosError(status) );
|
||||
return handle;
|
||||
}
|
||||
|
||||
#ifndef __REACTOS__
|
||||
|
||||
/***********************************************************************
|
||||
* OpenWaitableTimerW (kernelbase.@)
|
||||
@@ -874,7 +910,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH SetWaitableTimer( HANDLE handle, const LARGE_INTEG
|
||||
return set_ntstatus( status ) || status == STATUS_TIMER_RESUME_IGNORED;
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
/***********************************************************************
|
||||
* SetWaitableTimerEx (kernelbase.@)
|
||||
*/
|
||||
@@ -889,7 +925,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH SetWaitableTimerEx( HANDLE handle, const LARGE_INT
|
||||
return SetWaitableTimer( handle, when, period, callback, arg, FALSE );
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* CancelWaitableTimer (kernelbase.@)
|
||||
*/
|
||||
@@ -936,7 +972,6 @@ BOOL WINAPI DECLSPEC_HOTPATCH ChangeTimerQueueTimer( HANDLE queue, HANDLE timer,
|
||||
return set_ntstatus( RtlUpdateTimer( queue, timer, when, period ));
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* DeleteTimerQueueEx (kernelbase.@)
|
||||
*/
|
||||
@@ -945,7 +980,6 @@ BOOL WINAPI DECLSPEC_HOTPATCH DeleteTimerQueueEx( HANDLE queue, HANDLE event )
|
||||
return set_ntstatus( RtlDeleteTimerQueueEx( queue, event ));
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* DeleteTimerQueueTimer (kernelbase.@)
|
||||
*/
|
||||
@@ -953,13 +987,13 @@ BOOL WINAPI DECLSPEC_HOTPATCH DeleteTimerQueueTimer( HANDLE queue, HANDLE timer,
|
||||
{
|
||||
return set_ntstatus( RtlDeleteTimer( queue, timer, event ));
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* Critical sections
|
||||
***********************************************************************/
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* InitializeCriticalSectionAndSpinCount (kernelbase.@)
|
||||
*/
|
||||
@@ -978,12 +1012,12 @@ BOOL WINAPI DECLSPEC_HOTPATCH InitializeCriticalSectionEx( CRITICAL_SECTION *cri
|
||||
if (ret) RtlRaiseStatus( ret );
|
||||
return !ret;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* File mappings
|
||||
***********************************************************************/
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* CreateFileMappingW (kernelbase.@)
|
||||
*/
|
||||
@@ -1050,6 +1084,7 @@ HANDLE WINAPI DECLSPEC_HOTPATCH CreateFileMappingW( HANDLE file, LPSECURITY_ATTR
|
||||
return ret;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* CreateFileMappingFromApp (kernelbase.@)
|
||||
@@ -1059,7 +1094,7 @@ HANDLE WINAPI DECLSPEC_HOTPATCH CreateFileMappingFromApp( HANDLE file, LPSECURIT
|
||||
{
|
||||
return CreateFileMappingW( file, sa, protect, size << 32, size, name );
|
||||
}
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* OpenFileMappingW (kernelbase.@)
|
||||
*/
|
||||
@@ -1083,7 +1118,7 @@ HANDLE WINAPI DECLSPEC_HOTPATCH OpenFileMappingW( DWORD access, BOOL inherit, LP
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
/***********************************************************************
|
||||
* OpenFileMappingFromApp (kernelbase.@)
|
||||
*/
|
||||
@@ -1106,7 +1141,7 @@ HANDLE WINAPI DECLSPEC_HOTPATCH OpenFileMappingFromApp( ULONG access, BOOL inher
|
||||
* Condition variables
|
||||
***********************************************************************/
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* SleepConditionVariableCS (kernelbase.@)
|
||||
*/
|
||||
@@ -1202,7 +1237,9 @@ BOOL WINAPI DECLSPEC_HOTPATCH GetQueuedCompletionStatus( HANDLE port, LPDWORD co
|
||||
else SetLastError( RtlNtStatusToDosError(status) );
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
#endif
|
||||
#ifndef __REACTOS__
|
||||
//TODO:
|
||||
/******************************************************************************
|
||||
* GetQueuedCompletionStatusEx (kernelbase.@)
|
||||
*/
|
||||
@@ -1410,8 +1447,13 @@ BOOL WINAPI DECLSPEC_HOTPATCH CreatePipe( HANDLE *read_pipe, HANDLE *write_pipe,
|
||||
/* generate a unique pipe name (system wide) */
|
||||
for (;;)
|
||||
{
|
||||
#ifdef __REACTOS__
|
||||
swprintf( name, L"\\??\\pipe\\Win32.Pipes.%08lu.%08u",
|
||||
GetCurrentProcessId(), ++index );
|
||||
#else
|
||||
swprintf( name, ARRAY_SIZE(name), L"\\??\\pipe\\Win32.Pipes.%08lu.%08u",
|
||||
GetCurrentProcessId(), ++index );
|
||||
#endif
|
||||
RtlInitUnicodeString( &nt_name, name );
|
||||
if (!NtCreateNamedPipeFile( read_pipe, GENERIC_READ | FILE_WRITE_ATTRIBUTES | SYNCHRONIZE,
|
||||
&attr, &iosb, FILE_SHARE_WRITE, FILE_OPEN_IF,
|
||||
@@ -1674,7 +1716,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH WaitNamedPipeW( LPCWSTR name, DWORD timeout )
|
||||
return set_ntstatus( status );
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
|
||||
/***********************************************************************
|
||||
* Interlocked functions
|
||||
@@ -1763,3 +1805,5 @@ __ASM_STDCALL_FUNC(InterlockedDecrement, 4,
|
||||
"ret $4")
|
||||
|
||||
#endif /* __i386__ */
|
||||
#endif
|
||||
#endif
|
||||
|
@@ -2,3 +2,135 @@
|
||||
|
||||
#define CRITICAL_SECTION RTL_CRITICAL_SECTION
|
||||
#define CRITICAL_SECTION_DEBUG RTL_CRITICAL_SECTION_DEBUG
|
||||
#define IMAGE_FILE_MACHINE_TARGET_HOST 0x0001
|
||||
#define RTL_CONSTANT_STRING(s) { sizeof(s)-sizeof((s)[0]), sizeof(s), s }
|
||||
|
||||
|
||||
//def ndk
|
||||
NTSYSAPI
|
||||
BOOLEAN
|
||||
NTAPI
|
||||
RtlGetProductInfo(
|
||||
_In_ ULONG OSMajorVersion,
|
||||
_In_ ULONG OSMinorVersion,
|
||||
_In_ ULONG SpMajorVersion,
|
||||
_In_ ULONG SpMinorVersion,
|
||||
_Out_ PULONG ReturnedProductType);
|
||||
NTSYSAPI NTSTATUS WINAPI RtlQueryActivationContextApplicationSettings(DWORD,HANDLE,const WCHAR*,const WCHAR*,WCHAR*,SIZE_T,SIZE_T*);
|
||||
NTSYSAPI NTSTATUS WINAPI LdrSetDefaultDllDirectories(ULONG);
|
||||
NTSYSAPI NTSTATUS WINAPI LdrRemoveDllDirectory(void*);
|
||||
|
||||
#ifndef NT_SUCCESS
|
||||
#define NT_SUCCESS(Status) (((NTSTATUS)(Status)) >= 0)
|
||||
#endif
|
||||
#define SYMBOLIC_LINK_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | 0x1)
|
||||
|
||||
//kernel32
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH GetThreadGroupAffinity( HANDLE thread, GROUP_AFFINITY *affinity );
|
||||
|
||||
typedef struct _THREAD_NAME_INFORMATION
|
||||
{
|
||||
UNICODE_STRING ThreadName;
|
||||
} THREAD_NAME_INFORMATION, *PTHREAD_NAME_INFORMATION;
|
||||
|
||||
HANDLE WINAPI DECLSPEC_HOTPATCH CreateRemoteThreadEx( HANDLE process, SECURITY_ATTRIBUTES *sa,
|
||||
SIZE_T stack, LPTHREAD_START_ROUTINE start,
|
||||
LPVOID param, DWORD flags,
|
||||
LPPROC_THREAD_ATTRIBUTE_LIST attributes, DWORD *id );
|
||||
|
||||
|
||||
BOOL WINAPI GetVolumeInformationByHandleW( HANDLE handle, WCHAR *label, DWORD label_len,
|
||||
DWORD *serial, DWORD *filename_len, DWORD *flags,
|
||||
WCHAR *fsname, DWORD fsname_len );
|
||||
|
||||
|
||||
HRESULT WINAPI PathMatchSpecExW(const WCHAR *path, const WCHAR *mask, DWORD flags);
|
||||
INT WINAPI DECLSPEC_HOTPATCH CompareStringOrdinal( const WCHAR *str1, INT len1,
|
||||
const WCHAR *str2, INT len2, BOOL ignore_case );
|
||||
|
||||
#define URL_UNESCAPE_AS_UTF8 URL_ESCAPE_AS_UTF8
|
||||
|
||||
//shlwapi
|
||||
HRESULT WINAPI GetAcceptLanguagesW(WCHAR *langbuf, DWORD *buflen);
|
||||
|
||||
BOOL WINAPI GetWindowsAccountDomainSid( PSID sid, PSID domain_sid, DWORD *size );
|
||||
//rtl types
|
||||
//rtl
|
||||
NTSTATUS
|
||||
NTAPI
|
||||
RtlNewSecurityObjectEx(IN PSECURITY_DESCRIPTOR ParentDescriptor,
|
||||
IN PSECURITY_DESCRIPTOR CreatorDescriptor,
|
||||
OUT PSECURITY_DESCRIPTOR *NewDescriptor,
|
||||
IN LPGUID ObjectType,
|
||||
IN BOOLEAN IsDirectoryObject,
|
||||
IN ULONG AutoInheritFlags,
|
||||
IN HANDLE Token,
|
||||
IN PGENERIC_MAPPING GenericMapping);
|
||||
|
||||
NTSTATUS
|
||||
NTAPI
|
||||
RtlNewSecurityObjectWithMultipleInheritance(IN PSECURITY_DESCRIPTOR ParentDescriptor,
|
||||
IN PSECURITY_DESCRIPTOR CreatorDescriptor,
|
||||
OUT PSECURITY_DESCRIPTOR *NewDescriptor,
|
||||
IN LPGUID *ObjectTypes,
|
||||
IN ULONG GuidCount,
|
||||
IN BOOLEAN IsDirectoryObject,
|
||||
IN ULONG AutoInheritFlags,
|
||||
IN HANDLE Token,
|
||||
IN PGENERIC_MAPPING GenericMapping);
|
||||
NTSTATUS
|
||||
NTAPI
|
||||
RtlConvertToAutoInheritSecurityObject(IN PSECURITY_DESCRIPTOR ParentDescriptor,
|
||||
IN PSECURITY_DESCRIPTOR CreatorDescriptor,
|
||||
OUT PSECURITY_DESCRIPTOR *NewDescriptor,
|
||||
IN LPGUID ObjectType,
|
||||
IN BOOLEAN IsDirectoryObject,
|
||||
IN PGENERIC_MAPPING GenericMapping);
|
||||
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH QueryFullProcessImageNameW( HANDLE process, DWORD flags,
|
||||
WCHAR *name, DWORD *size );
|
||||
|
||||
|
||||
typedef void *PUMS_CONTEXT;
|
||||
typedef void *PUMS_COMPLETION_LIST;
|
||||
typedef PVOID PUMS_SCHEDULER_ENTRY_POINT;
|
||||
typedef struct _UMS_SCHEDULER_STARTUP_INFO
|
||||
{
|
||||
ULONG UmsVersion;
|
||||
PUMS_COMPLETION_LIST CompletionList;
|
||||
PUMS_SCHEDULER_ENTRY_POINT SchedulerProc;
|
||||
PVOID SchedulerParam;
|
||||
} UMS_SCHEDULER_STARTUP_INFO, *PUMS_SCHEDULER_STARTUP_INFO;
|
||||
|
||||
typedef enum _RTL_UMS_SCHEDULER_REASON UMS_SCHEDULER_REASON;
|
||||
typedef enum _RTL_UMS_THREAD_INFO_CLASS UMS_THREAD_INFO_CLASS, *PUMS_THREAD_INFO_CLASS;
|
||||
|
||||
#ifndef _PSAPI_H
|
||||
typedef struct _PSAPI_WS_WATCH_INFORMATION {
|
||||
LPVOID FaultingPc;
|
||||
LPVOID FaultingVa;
|
||||
} PSAPI_WS_WATCH_INFORMATION, *PPSAPI_WS_WATCH_INFORMATION;
|
||||
|
||||
#endif
|
||||
|
||||
typedef struct _PSAPI_WS_WATCH_INFORMATION_EX {
|
||||
PSAPI_WS_WATCH_INFORMATION BasicInfo;
|
||||
ULONG_PTR FaultingThreadId;
|
||||
ULONG_PTR Flags;
|
||||
} PSAPI_WS_WATCH_INFORMATION_EX, *PPSAPI_WS_WATCH_INFORMATION_EX;
|
||||
|
||||
#define PROCESSOR_ARCHITECTURE_INTEL 0
|
||||
#define PROCESSOR_ARCHITECTURE_MIPS 1
|
||||
#define PROCESSOR_ARCHITECTURE_ALPHA 2
|
||||
#define PROCESSOR_ARCHITECTURE_PPC 3
|
||||
#define PROCESSOR_ARCHITECTURE_SHX 4
|
||||
#define PROCESSOR_ARCHITECTURE_ARM 5
|
||||
#define PROCESSOR_ARCHITECTURE_IA64 6
|
||||
#define PROCESSOR_ARCHITECTURE_ALPHA64 7
|
||||
#define PROCESSOR_ARCHITECTURE_MSIL 8
|
||||
#define PROCESSOR_ARCHITECTURE_AMD64 9
|
||||
#define PROCESSOR_ARCHITECTURE_IA32_ON_WIN64 10
|
||||
#define PROCESSOR_ARCHITECTURE_NEUTRAL 11
|
||||
#define PROCESSOR_ARCHITECTURE_ARM64 12
|
||||
#define PROCESSOR_ARCHITECTURE_ARM32_ON_WIN64 13
|
||||
#define PROCESSOR_ARCHITECTURE_IA32_ON_ARM64 14
|
||||
|
@@ -53,7 +53,7 @@ static DWORD rtlmode_to_win32mode( DWORD rtlmode )
|
||||
return win32mode;
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***************************************************************************
|
||||
* CreateRemoteThread (kernelbase.@)
|
||||
*/
|
||||
@@ -134,7 +134,6 @@ void WINAPI DECLSPEC_HOTPATCH GetCurrentThreadStackLimits( ULONG_PTR *low, ULONG
|
||||
*high = (ULONG_PTR)NtCurrentTeb()->Tib.StackBase;
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* GetCurrentThread (kernelbase.@)
|
||||
*/
|
||||
@@ -204,7 +203,7 @@ DWORD WINAPI DECLSPEC_HOTPATCH GetThreadErrorMode(void)
|
||||
{
|
||||
return rtlmode_to_win32mode( RtlGetThreadErrorMode() );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* GetThreadGroupAffinity (kernelbase.@)
|
||||
@@ -219,7 +218,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH GetThreadGroupAffinity( HANDLE thread, GROUP_AFFIN
|
||||
return set_ntstatus( NtQueryInformationThread( thread, ThreadGroupInformation,
|
||||
affinity, sizeof(*affinity), NULL ));
|
||||
}
|
||||
|
||||
#ifndef __REACTOS__
|
||||
|
||||
/***********************************************************************
|
||||
* GetThreadIOPendingFlag (kernelbase.@)
|
||||
@@ -242,17 +241,9 @@ DWORD WINAPI DECLSPEC_HOTPATCH GetThreadId( HANDLE thread )
|
||||
return 0;
|
||||
return HandleToULong( tbi.ClientId.UniqueThread );
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* GetThreadIdealProcessorEx (kernelbase.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH GetThreadIdealProcessorEx( HANDLE thread, PROCESSOR_NUMBER *ideal )
|
||||
{
|
||||
return set_ntstatus( NtQueryInformationThread( thread, ThreadIdealProcessorEx, ideal, sizeof(*ideal), NULL));
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* GetThreadLocale (kernelbase.@)
|
||||
*/
|
||||
@@ -263,7 +254,6 @@ LCID WINAPI /* DECLSPEC_HOTPATCH */ GetThreadLocale(void)
|
||||
return ret;
|
||||
}
|
||||
|
||||
|
||||
/**********************************************************************
|
||||
* GetThreadPriority (kernelbase.@)
|
||||
*/
|
||||
@@ -320,7 +310,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH GetThreadTimes( HANDLE thread, LPFILETIME creation
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* GetThreadUILanguage (kernelbase.@)
|
||||
@@ -334,7 +324,7 @@ LANGID WINAPI DECLSPEC_HOTPATCH GetThreadUILanguage(void)
|
||||
return lang;
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* OpenThread (kernelbase.@)
|
||||
*/
|
||||
@@ -407,6 +397,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH SetThreadContext( HANDLE thread, const CONTEXT *co
|
||||
return set_ntstatus( NtSetContextThread( thread, context ));
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* SetThreadDescription (kernelbase.@)
|
||||
@@ -501,8 +492,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH SetThreadGroupAffinity( HANDLE thread, const GROUP
|
||||
if (old && !GetThreadGroupAffinity( thread, old )) return FALSE;
|
||||
return set_ntstatus( NtSetInformationThread( thread, ThreadGroupInformation, new, sizeof(*new) ));
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/**********************************************************************
|
||||
* SetThreadIdealProcessor (kernelbase.@)
|
||||
*/
|
||||
@@ -516,8 +506,7 @@ DWORD WINAPI DECLSPEC_HOTPATCH SetThreadIdealProcessor( HANDLE thread, DWORD pro
|
||||
SetLastError( RtlNtStatusToDosError( status ));
|
||||
return ~0u;
|
||||
}
|
||||
|
||||
|
||||
#endif
|
||||
/***********************************************************************
|
||||
* SetThreadIdealProcessorEx (kernelbase.@)
|
||||
*/
|
||||
@@ -529,6 +518,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH SetThreadIdealProcessorEx( HANDLE thread, PROCESSO
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
#ifndef __REACTOS__
|
||||
|
||||
/**********************************************************************
|
||||
* SetThreadLocale (kernelbase.@)
|
||||
@@ -567,7 +557,6 @@ BOOL WINAPI DECLSPEC_HOTPATCH SetThreadPriorityBoost( HANDLE thread, BOOL disabl
|
||||
return set_ntstatus( NtSetInformationThread( thread, ThreadPriorityBoost, &disable, sizeof(disable) ));
|
||||
}
|
||||
|
||||
|
||||
/**********************************************************************
|
||||
* SetThreadStackGuarantee (kernelbase.@)
|
||||
*/
|
||||
@@ -589,7 +578,6 @@ BOOL WINAPI DECLSPEC_HOTPATCH SetThreadStackGuarantee( ULONG *size )
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
/**********************************************************************
|
||||
* SetThreadUILanguage (kernelbase.@)
|
||||
*/
|
||||
@@ -600,6 +588,7 @@ LANGID WINAPI DECLSPEC_HOTPATCH SetThreadUILanguage( LANGID langid )
|
||||
if (!langid) langid = GetThreadUILanguage();
|
||||
return langid;
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
/**********************************************************************
|
||||
@@ -620,7 +609,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH SetThreadInformation( HANDLE thread, THREAD_INFORM
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/**********************************************************************
|
||||
* SuspendThread (kernelbase.@)
|
||||
*/
|
||||
@@ -761,6 +750,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH TlsSetValue( DWORD index, LPVOID value )
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* Wow64GetThreadContext (kernelbase.@)
|
||||
@@ -795,7 +785,7 @@ BOOL WINAPI Wow64SetThreadContext( HANDLE handle, const WOW64_CONTEXT *context)
|
||||
/***********************************************************************
|
||||
* Fibers
|
||||
***********************************************************************/
|
||||
|
||||
#ifndef __REACTOS__
|
||||
|
||||
struct fiber_actctx
|
||||
{
|
||||
@@ -1103,7 +1093,6 @@ LPVOID WINAPI /* DECLSPEC_HOTPATCH */ ConvertThreadToFiber( LPVOID param )
|
||||
return ConvertThreadToFiberEx( param, 0 );
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* ConvertThreadToFiberEx (kernelbase.@)
|
||||
*/
|
||||
@@ -1233,7 +1222,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH FlsSetValue( DWORD index, PVOID data )
|
||||
{
|
||||
return set_ntstatus( RtlFlsSetValue( index, data ));
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* Thread pool
|
||||
@@ -1341,7 +1330,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH TrySubmitThreadpoolCallback( PTP_SIMPLE_CALLBACK c
|
||||
return set_ntstatus( TpSimpleTryPost( callback, userdata, environment ));
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* QueueUserWorkItem (kernelbase.@)
|
||||
*/
|
||||
@@ -1349,6 +1338,7 @@ BOOL WINAPI DECLSPEC_HOTPATCH QueueUserWorkItem( LPTHREAD_START_ROUTINE func, PV
|
||||
{
|
||||
return set_ntstatus( RtlQueueWorkItem( func, context, flags ));
|
||||
}
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* SetThreadpoolStackInformation (kernelbase.@)
|
||||
|
@@ -68,6 +68,7 @@ struct version_info
|
||||
DWORD build;
|
||||
};
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* Version Info Structure
|
||||
*/
|
||||
@@ -1541,7 +1542,7 @@ BOOL WINAPI GetVersionExW( OSVERSIONINFOW *info )
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* GetCurrentPackageFamilyName (kernelbase.@)
|
||||
|
@@ -33,10 +33,14 @@
|
||||
#include "winnls.h"
|
||||
#include "winternl.h"
|
||||
#include "winioctl.h"
|
||||
#ifdef __REACTOS__
|
||||
#include <mountmgr.h>
|
||||
#else
|
||||
#include "ntddcdrm.h"
|
||||
#define WINE_MOUNTMGR_EXTENSIONS
|
||||
#include "ddk/mountmgr.h"
|
||||
#include "ddk/wdm.h"
|
||||
#endif
|
||||
#include "kernelbase.h"
|
||||
#include "wine/debug.h"
|
||||
|
||||
@@ -119,6 +123,7 @@ static BOOL open_device_root( LPCWSTR root, HANDLE *handle )
|
||||
return set_ntstatus( status );
|
||||
}
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/* query the type of a drive from the mount manager */
|
||||
static DWORD get_mountmgr_drive_type( LPCWSTR root )
|
||||
{
|
||||
@@ -147,7 +152,7 @@ static DWORD get_mountmgr_drive_type( LPCWSTR root )
|
||||
CloseHandle( mgr );
|
||||
return data.type;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* GetVolumeInformationW (kernelbase.@)
|
||||
@@ -568,7 +573,7 @@ UINT WINAPI DECLSPEC_HOTPATCH GetLogicalDriveStringsW( UINT len, LPWSTR buffer )
|
||||
return count * 4;
|
||||
}
|
||||
|
||||
|
||||
#ifndef __REACTOS__
|
||||
/***********************************************************************
|
||||
* GetDriveTypeW (kernelbase.@)
|
||||
*/
|
||||
@@ -629,7 +634,7 @@ UINT WINAPI DECLSPEC_HOTPATCH GetDriveTypeA( LPCSTR root )
|
||||
if (root && !(rootW = file_name_AtoW( root, FALSE ))) return DRIVE_NO_ROOT_DIR;
|
||||
return GetDriveTypeW( rootW );
|
||||
}
|
||||
|
||||
#endif
|
||||
|
||||
/***********************************************************************
|
||||
* GetDiskFreeSpaceExW (kernelbase.@)
|
||||
|
@@ -25,8 +25,6 @@ list(APPEND SOURCE
|
||||
misc/shutdown.c
|
||||
misc/sysfunc.c
|
||||
misc/unicode.c
|
||||
reg/hkcr.c
|
||||
reg/reg.c
|
||||
sec/ac.c
|
||||
sec/audit.c
|
||||
sec/lsa.c
|
||||
@@ -54,6 +52,15 @@ list(APPEND PCH_SKIP_SOURCE
|
||||
${CMAKE_CURRENT_BINARY_DIR}/svcctl_c.c
|
||||
${CMAKE_CURRENT_BINARY_DIR}/winreg_c.c)
|
||||
|
||||
# This static library is for kernelbase and vista APIs in kernel32
|
||||
add_library(win32_registry
|
||||
${PCH_SKIP_SOURCE}
|
||||
reg/hkcr.c
|
||||
reg/reg.c
|
||||
)
|
||||
target_link_libraries(win32_registry ${PSEH_LIB})
|
||||
target_compile_definitions(win32_registry PRIVATE _KERNEL32_ UNICODE _UNICODE)
|
||||
|
||||
add_library(advapi32 MODULE
|
||||
${SOURCE}
|
||||
${PCH_SKIP_SOURCE}
|
||||
@@ -61,7 +68,7 @@ add_library(advapi32 MODULE
|
||||
${CMAKE_CURRENT_BINARY_DIR}/advapi32.def)
|
||||
|
||||
set_module_type(advapi32 win32dll UNICODE ENTRYPOINT DllMain 12)
|
||||
target_link_libraries(advapi32 cryptlib wine ${PSEH_LIB})
|
||||
target_link_libraries(advapi32 win32_registry cryptlib wine ${PSEH_LIB})
|
||||
if(DLL_EXPORT_VERSION GREATER_EQUAL 0x600)
|
||||
target_link_libraries(advapi32 etwtrace)
|
||||
endif()
|
||||
|
@@ -76,9 +76,11 @@ list(APPEND SOURCE
|
||||
wine/comm.c
|
||||
wine/lzexpand.c
|
||||
wine/muldiv.c
|
||||
wine/process.c
|
||||
wine/profile.c
|
||||
wine/res.c
|
||||
wine/timezone.c
|
||||
wine/transact.c
|
||||
winnls/string/casemap.c
|
||||
winnls/string/collation.c
|
||||
winnls/string/digitmap.c
|
||||
@@ -130,8 +132,8 @@ set_module_type(kernel32 win32dll ENTRYPOINT DllMain 12)
|
||||
set_subsystem(kernel32 console)
|
||||
################# END HACK #################
|
||||
|
||||
target_link_libraries(kernel32 kernel32_vista_static kernel32_shared kernelbase_static wine chkstk ${PSEH_LIB})
|
||||
add_importlibs(kernel32 ntdll)
|
||||
target_link_libraries(kernel32 win32_registry kernel32_vista_static kernel32_shared kernelbase_static wine chkstk ${PSEH_LIB})
|
||||
add_importlibs(kernel32 ntdll_vista ntdll)
|
||||
add_pch(kernel32 k32.h SOURCE)
|
||||
add_dependencies(kernel32 psdk errcodes asm)
|
||||
add_cd_file(TARGET kernel32 DESTINATION reactos/system32 FOR all)
|
||||
|
@@ -1860,5 +1860,26 @@ LocalUnlock(HLOCAL hMem)
|
||||
RtlUnlockHeap(BaseHeap);
|
||||
return RetVal;
|
||||
}
|
||||
#undef HeapAlloc
|
||||
LPVOID
|
||||
WINAPI
|
||||
HeapAlloc(
|
||||
_In_ HANDLE hHeap,
|
||||
_In_ DWORD dwFlags,
|
||||
_In_ SIZE_T dwBytes)
|
||||
{
|
||||
return RtlAllocateHeap(hHeap, dwFlags, dwBytes);
|
||||
}
|
||||
|
||||
#undef HeapFree
|
||||
BOOL
|
||||
WINAPI
|
||||
HeapFree(
|
||||
_In_ HANDLE hHeap,
|
||||
_In_ DWORD dwFlags,
|
||||
_In_ _Frees_ptr_opt_ LPVOID lpMem)
|
||||
{
|
||||
return RtlFreeHeap(hHeap, dwFlags, lpMem);
|
||||
}
|
||||
|
||||
/* EOF */
|
||||
|
@@ -13,6 +13,7 @@
|
||||
#include <k32.h>
|
||||
|
||||
#include <ndk/pofuncs.h>
|
||||
#include <ndk/potypes.h>
|
||||
|
||||
#define NDEBUG
|
||||
#include <debug.h>
|
||||
@@ -230,3 +231,40 @@ SetThreadExecutionState(EXECUTION_STATE esFlags)
|
||||
|
||||
return esFlags;
|
||||
}
|
||||
|
||||
typedef enum _POWER_REQUEST_TYPE {
|
||||
PowerRequestDisplayRequired,
|
||||
PowerRequestSystemRequired,
|
||||
PowerRequestAwayModeRequired
|
||||
} POWER_REQUEST_TYPE, *PPOWER_REQUEST_TYPE;
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
* PowerCreateRequest (KERNEL32.@)
|
||||
*/
|
||||
HANDLE WINAPI PowerCreateRequest(REASON_CONTEXT *context)
|
||||
{
|
||||
DPRINT1("(%p): stub\n", context);
|
||||
|
||||
return CreateEventW(NULL, TRUE, FALSE, NULL);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* PowerSetRequest (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI PowerSetRequest(HANDLE request, POWER_REQUEST_TYPE type)
|
||||
{
|
||||
DPRINT1("(%p, %u): stub\n", request, type);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* PowerClearRequest (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI PowerClearRequest(HANDLE request, POWER_REQUEST_TYPE type)
|
||||
{
|
||||
DPRINT1("(%p, %u): stub\n", request, type);
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
@@ -621,15 +621,3 @@ SetSystemFileCacheSize(IN SIZE_T MinimumFileCacheSize,
|
||||
STUB;
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
LONG
|
||||
WINAPI
|
||||
GetCurrentPackageId(UINT32 *BufferLength,
|
||||
BYTE *Buffer)
|
||||
{
|
||||
STUB;
|
||||
return APPMODEL_ERROR_NO_PACKAGE;
|
||||
}
|
||||
|
@@ -11,7 +11,7 @@
|
||||
#define comm 205
|
||||
#define profile 206
|
||||
#define nls 207
|
||||
|
||||
#define kernel32process 208
|
||||
|
||||
#if DBG
|
||||
#define DEBUG_CHANNEL(ch) static ULONG gDebugChannel = ch;
|
||||
|
@@ -3,8 +3,10 @@
|
||||
@ stdcall ActivateActCtx(ptr ptr)
|
||||
@ stdcall AddAtomA(str)
|
||||
@ stdcall AddAtomW(wstr)
|
||||
@ stdcall AddConsoleAliasA(str str str) ;check
|
||||
@ stdcall AddConsoleAliasW(wstr wstr wstr) ;check
|
||||
@ stdcall AddConsoleAliasA(str str str)
|
||||
@ stdcall AddConsoleAliasW(wstr wstr wstr)
|
||||
@ stdcall -version=0x600+ -stub AddDllDirectory(wstr)
|
||||
@ stdcall -stub -version=0x601+ AddIntegrityLabelToBoundaryDescriptor(ptr ptr)
|
||||
@ stdcall AddLocalAlternateComputerNameA(str ptr)
|
||||
@ stdcall AddLocalAlternateComputerNameW(wstr ptr)
|
||||
@ stdcall AddRefActCtx(ptr)
|
||||
@@ -15,9 +17,11 @@
|
||||
@ stdcall -stub -version=0x600+ AdjustCalendarDate(ptr long long)
|
||||
@ stdcall AllocConsole()
|
||||
@ stdcall AllocateUserPhysicalPages(long ptr ptr)
|
||||
@ stdcall -stub -version=0x600+ AllocateUserPhysicalPagesNuma(ptr ptr ptr long)
|
||||
@ stdcall -version=0x600+ -stub AllocateUserPhysicalPagesNuma(ptr ptr ptr long)
|
||||
@ stdcall -version=0x600+ ApplicationRecoveryFinished(long)
|
||||
@ stdcall -version=0x600+ ApplicationRecoveryInProgress(ptr)
|
||||
@ stdcall -version=0xA00+ AppPolicyGetMediaFoundationCodecLoading(ptr ptr)
|
||||
@ stdcall -version=0xA00+ AppPolicyGetWindowingModel(ptr ptr)
|
||||
@ stdcall AreFileApisANSI()
|
||||
@ stdcall AssignProcessToJobObject(ptr ptr)
|
||||
@ stdcall AttachConsole(long)
|
||||
@@ -25,10 +29,14 @@
|
||||
@ stdcall BackupSeek(ptr long long ptr ptr ptr)
|
||||
@ stdcall BackupWrite(ptr ptr long ptr long long ptr)
|
||||
@ stdcall BaseCheckAppcompatCache(wstr ptr wstr ptr)
|
||||
# @ stub BaseCheckAppcompatCacheEx
|
||||
@ stdcall BaseCheckRunApp(long ptr long long long long long long long long)
|
||||
@ stdcall BaseCleanupAppcompatCacheSupport(ptr)
|
||||
# @ stub -version=0x601+ BaseDllReadWriteIniFile
|
||||
@ stdcall BaseDumpAppcompatCache()
|
||||
@ stdcall BaseFlushAppcompatCache()
|
||||
# @ stub -version=0x601+ BaseFormatObjectAttributes
|
||||
# @ stub -version=0x601+ BaseFormatTimeOut
|
||||
@ stub -version=0x600+ BaseGenerateAppCompatData
|
||||
@ stdcall BaseInitAppcompatCacheSupport()
|
||||
@ stdcall BaseIsAppcompatInfrastructureDisabled() IsShimInfrastructureDisabled
|
||||
@@ -39,9 +47,15 @@
|
||||
@ stub -version=0x600+ BaseThreadInitThunk
|
||||
;@ stdcall -version=0x502 -arch=x86_64 BaseThreadStart()
|
||||
@ stdcall BaseUpdateAppcompatCache(long long long)
|
||||
# @ stub -version=0x601+ Basep8BitStringToDynamicUnicodeString
|
||||
# @ stub -version=0x601+ BasepAllocateActivationContextActivationBlock
|
||||
# @ stub -version=0x601+ BasepAnsiStringToDynamicUnicodeString
|
||||
# @ stub -version=0x601+ BasepCheckAppCompat
|
||||
@ stdcall BasepCheckBadapp(long ptr long long long long long long long)
|
||||
@ stdcall BasepCheckWinSaferRestrictions(long long long long long long)
|
||||
# @ stub -version=0x601+ BasepFreeActivationContextActivationBlock
|
||||
@ stdcall BasepFreeAppCompatData(ptr ptr)
|
||||
# @ stub -version=0x601+ BasepMapModuleHandle
|
||||
@ stdcall Beep(long long)
|
||||
@ stdcall BeginUpdateResourceA(str long)
|
||||
@ stdcall BeginUpdateResourceW(wstr long)
|
||||
@@ -52,12 +66,12 @@
|
||||
@ stdcall BuildCommDCBW(wstr ptr)
|
||||
@ stdcall CallNamedPipeA(str ptr long ptr long ptr long)
|
||||
@ stdcall CallNamedPipeW(wstr ptr long ptr long ptr long)
|
||||
@ stdcall -stub -version=0x600+ CallbackMayRunLong(ptr)
|
||||
@ stdcall -version=0x600+ CallbackMayRunLong(ptr)
|
||||
@ stdcall CancelDeviceWakeupRequest(long)
|
||||
@ stdcall CancelIo(long)
|
||||
@ stdcall -stub -version=0x600+ CancelIoEx(ptr ptr)
|
||||
@ stdcall -version=0x600+ CancelIoEx(ptr ptr)
|
||||
@ stdcall -stub -version=0x600+ CancelSynchronousIo(ptr)
|
||||
@ stdcall -stub -version=0x600+ CancelThreadpoolIo(ptr)
|
||||
@ stdcall -version=0x600+ CancelThreadpoolIo(ptr) NTDLL.TpCancelAsyncIoOperation
|
||||
@ stdcall CancelTimerQueueTimer(long long)
|
||||
@ stdcall CancelWaitableTimer(long)
|
||||
@ stdcall ChangeTimerQueueTimer(ptr ptr long long)
|
||||
@@ -73,13 +87,14 @@
|
||||
@ stdcall CloseHandle(long)
|
||||
@ stdcall -stub -version=0x600+ ClosePrivateNamespace(ptr long)
|
||||
@ stdcall CloseProfileUserMapping()
|
||||
@ stdcall -stub -version=0x600+ CloseThreadpool(ptr)
|
||||
@ stdcall -stub -version=0x600+ CloseThreadpoolCleanupGroup(ptr)
|
||||
@ stdcall -stub -version=0x600+ CloseThreadpoolCleanupGroupMembers(ptr long ptr)
|
||||
@ stdcall -stub -version=0x600+ CloseThreadpoolIo(ptr)
|
||||
@ stdcall -stub -version=0x600+ CloseThreadpoolTimer(ptr)
|
||||
@ stdcall -stub -version=0x600+ CloseThreadpoolWait(ptr)
|
||||
@ stdcall -stub -version=0x600+ CloseThreadpoolWork(ptr)
|
||||
@ stdcall -stub -version=0xA00+ ClosePseudoConsole(ptr)
|
||||
@ stdcall -version=0x600+ CloseThreadpool(ptr) NTDLL.TpReleasePool
|
||||
@ stdcall -version=0x600+ CloseThreadpoolCleanupGroup(ptr) NTDLL.TpReleaseCleanupGroup
|
||||
@ stdcall -version=0x600+ CloseThreadpoolCleanupGroupMembers(ptr long ptr) NTDLL.TpReleaseCleanupGroupMembers
|
||||
@ stdcall -version=0x600+ CloseThreadpoolIo(ptr) NTDLL.TpReleaseIoCompletion
|
||||
@ stdcall -version=0x600+ CloseThreadpoolTimer(ptr) NTDLL.TpReleaseTimer
|
||||
@ stdcall -version=0x600+ CloseThreadpoolWait(ptr) NTDLL.TpReleaseWait
|
||||
@ stdcall -version=0x600+ CloseThreadpoolWork(ptr) NTDLL.TpReleaseWork
|
||||
@ stdcall CmdBatNotification(long)
|
||||
@ stdcall CommConfigDialogA(str long ptr)
|
||||
@ stdcall CommConfigDialogW(wstr long ptr)
|
||||
@@ -100,6 +115,8 @@
|
||||
@ stdcall -stub -version=0x600+ ConvertSystemTimeToCalDateTime(ptr long ptr)
|
||||
@ stdcall ConvertThreadToFiber(ptr)
|
||||
@ stdcall ConvertThreadToFiberEx(ptr long)
|
||||
@ stdcall -version=0x601+ -stub CopyContext(ptr long ptr)
|
||||
@ stdcall -version=0x602+ CopyFile2(wstr wstr ptr)
|
||||
@ stdcall CopyFileA(str str long)
|
||||
@ stdcall CopyFileExA(str str ptr ptr ptr long)
|
||||
@ stdcall CopyFileExW(wstr wstr ptr ptr ptr long)
|
||||
@@ -110,31 +127,33 @@
|
||||
@ stdcall CreateActCtxA(ptr)
|
||||
@ stdcall CreateActCtxW(ptr)
|
||||
@ stdcall -stub -version=0x600+ CreateBoundaryDescriptorA(str long)
|
||||
@ stdcall -stub -version=0x600+ CreateBoundaryDescriptorW(wstr long)
|
||||
@ stdcall -version=0x600+ CreateBoundaryDescriptorW(wstr long)
|
||||
@ stdcall CreateConsoleScreenBuffer(long long ptr long ptr)
|
||||
@ stdcall CreateDirectoryA(str ptr)
|
||||
@ stdcall CreateDirectoryExA(str str ptr)
|
||||
@ stdcall CreateDirectoryExW(wstr wstr ptr)
|
||||
@ stdcall -stub -version=0x600+ CreateDirectoryTransactedA(str str ptr ptr)
|
||||
@ stdcall -stub -version=0x600+ CreateDirectoryTransactedW(wstr wstr ptr ptr)
|
||||
@ stdcall -version=0x600+ CreateDirectoryTransactedA(str str ptr ptr)
|
||||
@ stdcall -version=0x600+ CreateDirectoryTransactedW(wstr wstr ptr ptr)
|
||||
@ stdcall CreateDirectoryW(wstr ptr)
|
||||
@ stdcall CreateEventA(ptr long long str)
|
||||
@ stdcall -stub -version=0x600+ CreateEventExA(ptr str long long)
|
||||
@ stdcall -stub -version=0x600+ CreateEventExW(ptr wstr long long)
|
||||
@ stdcall -version=0x600+ CreateEventExA(ptr str long long)
|
||||
@ stdcall -version=0x600+ CreateEventExW(ptr wstr long long)
|
||||
@ stdcall CreateEventW(ptr long long wstr)
|
||||
@ stdcall CreateFiber(long ptr ptr)
|
||||
@ stdcall CreateFiberEx(long long long ptr ptr)
|
||||
@ stdcall -version=0x602+ CreateFile2(wstr long long long ptr)
|
||||
@ stdcall CreateFileA(str long long ptr long long long)
|
||||
@ stdcall CreateFileMappingA(long ptr long long long str)
|
||||
@ stdcall -stub -version=0x600+ CreateFileMappingNumaA(ptr ptr long long long str long)
|
||||
@ stdcall -version=0x600+ CreateFileMappingFromApp(long ptr long int64 wstr)
|
||||
@ stdcall -stub -version=0x600+ CreateFileMappingNumaW(ptr ptr long long long wstr long)
|
||||
@ stdcall CreateFileMappingW(long ptr long long long wstr)
|
||||
@ stdcall -stub -version=0x600+ CreateFileTransactedA(str long long ptr long long ptr ptr ptr ptr)
|
||||
@ stdcall -stub -version=0x600+ CreateFileTransactedW(wstr long long ptr long long ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x600+ CreateFileTransactedA(str long long ptr long long ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x600+ CreateFileTransactedW(wstr long long ptr long long ptr ptr ptr ptr)
|
||||
@ stdcall CreateFileW(wstr long long ptr long long long)
|
||||
@ stdcall CreateHardLinkA(str str ptr)
|
||||
@ stdcall -stub -version=0x600+ CreateHardLinkTransactedA(str str ptr ptr)
|
||||
@ stdcall -stub -version=0x600+ CreateHardLinkTransactedW(wstr wstr ptr ptr)
|
||||
@ stdcall -version=0x600+ CreateHardLinkTransactedA(str str ptr ptr)
|
||||
@ stdcall -version=0x600+ CreateHardLinkTransactedW(wstr wstr ptr ptr)
|
||||
@ stdcall CreateHardLinkW(wstr wstr ptr)
|
||||
@ stdcall CreateIoCompletionPort(long long long long)
|
||||
@ stdcall CreateJobObjectA(ptr str)
|
||||
@@ -144,8 +163,8 @@
|
||||
@ stdcall CreateMailslotW(ptr long long ptr)
|
||||
@ stdcall CreateMemoryResourceNotification(long)
|
||||
@ stdcall CreateMutexA(ptr long str)
|
||||
@ stdcall -stub -version=0x600+ CreateMutexExA(ptr str long long)
|
||||
@ stdcall -stub -version=0x600+ CreateMutexExW(ptr wstr long long)
|
||||
@ stdcall -version=0x600+ CreateMutexExA(ptr str long long)
|
||||
@ stdcall -version=0x600+ CreateMutexExW(ptr wstr long long)
|
||||
@ stdcall CreateMutexW(ptr long wstr)
|
||||
@ stdcall CreateNamedPipeA(str long long long long long long ptr)
|
||||
@ stdcall CreateNamedPipeW(wstr long long long long long long ptr)
|
||||
@@ -157,7 +176,9 @@
|
||||
@ stdcall CreateProcessInternalA(ptr str str ptr ptr long long ptr str ptr ptr long)
|
||||
@ stdcall CreateProcessInternalW(ptr wstr wstr ptr ptr long long ptr wstr ptr ptr long)
|
||||
@ stdcall CreateProcessW(wstr wstr ptr ptr long long ptr wstr ptr ptr)
|
||||
@ stdcall -stub -version=0xA00+ CreatePseudoConsole(long long long long ptr)
|
||||
@ stdcall CreateRemoteThread(long ptr long ptr long long ptr)
|
||||
@ stdcall -version=0x601+ -stub CreateRemoteThreadEx(long ptr long ptr ptr long ptr ptr)
|
||||
@ stdcall CreateSemaphoreA(ptr long long str)
|
||||
@ stdcall -version=0x600+ CreateSemaphoreExA(ptr long long str long long)
|
||||
@ stdcall -version=0x600+ CreateSemaphoreExW(ptr long long wstr long long)
|
||||
@@ -169,18 +190,20 @@
|
||||
@ stdcall -version=0x600+ CreateSymbolicLinkW(wstr wstr long)
|
||||
@ stdcall CreateTapePartition(long long long long)
|
||||
@ stdcall CreateThread(ptr long ptr long long ptr)
|
||||
@ stdcall -stub -version=0x600+ CreateThreadpool(ptr)
|
||||
@ stdcall -stub -version=0x600+ CreateThreadpoolCleanupGroup()
|
||||
@ stdcall -stub -version=0x600+ CreateThreadpoolIo(ptr ptr ptr ptr)
|
||||
@ stdcall -stub -version=0x600+ CreateThreadpoolTimer(ptr ptr ptr)
|
||||
@ stdcall -stub -version=0x600+ CreateThreadpoolWait(ptr ptr ptr)
|
||||
@ stdcall -stub -version=0x600+ CreateThreadpoolWork(ptr ptr ptr)
|
||||
@ stdcall -version=0x600+ CreateThreadpool(ptr)
|
||||
@ stdcall -version=0x600+ CreateThreadpoolCleanupGroup()
|
||||
@ stdcall -version=0x600+ CreateThreadpoolIo(ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x600+ CreateThreadpoolTimer(ptr ptr ptr)
|
||||
@ stdcall -version=0x600+ CreateThreadpoolWait(ptr ptr ptr)
|
||||
@ stdcall -version=0x600+ CreateThreadpoolWork(ptr ptr ptr)
|
||||
@ stdcall CreateTimerQueue()
|
||||
@ stdcall CreateTimerQueueTimer(ptr long ptr ptr long long long)
|
||||
@ stdcall CreateToolhelp32Snapshot(long long)
|
||||
@ stdcall -version=0x601+ -arch=win64 CreateUmsCompletionList(ptr)
|
||||
@ stdcall -version=0x601+ -arch=win64 CreateUmsThreadContext(ptr)
|
||||
@ stdcall CreateWaitableTimerA(ptr long str)
|
||||
@ stub -version=0x600+ CreateWaitableTimerExA
|
||||
@ stub -version=0x600+ CreateWaitableTimerExW
|
||||
@ stdcall -version=0x600+ -stub CreateWaitableTimerExA(ptr str long long)
|
||||
@ stdcall -version=0x600+ CreateWaitableTimerExW(ptr wstr long long)
|
||||
@ stdcall CreateWaitableTimerW(ptr long wstr)
|
||||
;@ stdcall -arch=x86_64 CtrlRoutine()
|
||||
@ stdcall DeactivateActCtx(long ptr)
|
||||
@@ -199,18 +222,23 @@
|
||||
@ stdcall DeleteCriticalSection(ptr) ntdll.RtlDeleteCriticalSection
|
||||
@ stdcall DeleteFiber(ptr)
|
||||
@ stdcall DeleteFileA(str)
|
||||
@ stub -version=0x600+ DeleteFileTransactedA
|
||||
@ stub -version=0x600+ DeleteFileTransactedW
|
||||
@ stdcall -version=0x600+ DeleteFileTransactedA(str ptr)
|
||||
@ stdcall -version=0x600+ DeleteFileTransactedW(wstr ptr)
|
||||
@ stdcall DeleteFileW(wstr)
|
||||
@ stdcall -stub -version=0x600+ DeleteProcThreadAttributeList(ptr)
|
||||
@ stdcall -version=0x600+ DeleteProcThreadAttributeList(ptr)
|
||||
# @ stub -version=0x601+ DisableThreadProfiling
|
||||
@ stdcall -stub -version=0xA00+ DiscardVirtualMemory(ptr long)
|
||||
@ stdcall DeleteTimerQueue(long)
|
||||
@ stdcall DeleteTimerQueueEx(long long)
|
||||
@ stdcall DeleteTimerQueueTimer(long long long)
|
||||
@ stdcall -version=0x601+ -arch=win64 DeleteUmsCompletionList(ptr)
|
||||
@ stdcall -version=0x601+ -arch=win64 DeleteUmsThreadContext(ptr)
|
||||
@ stdcall DeleteVolumeMountPointA(str) ;check
|
||||
@ stdcall DeleteVolumeMountPointW(wstr) ;check
|
||||
@ stdcall -version=0x601+ -arch=win64 DequeueUmsCompletionListItems(ptr long ptr)
|
||||
@ stdcall DeviceIoControl(long long ptr long ptr long ptr ptr)
|
||||
@ stdcall DisableThreadLibraryCalls(ptr)
|
||||
@ stub -version=0x600+ DisassociateCurrentThreadFromCallback
|
||||
@ stdcall -version=0x600+ DisassociateCurrentThreadFromCallback(ptr) NTDLL.TpDisassociateCallback
|
||||
@ stdcall DisconnectNamedPipe(long)
|
||||
@ stdcall DnsHostnameToComputerNameA(str ptr ptr)
|
||||
@ stdcall DnsHostnameToComputerNameW(wstr ptr ptr)
|
||||
@@ -219,6 +247,7 @@
|
||||
@ stdcall DosPathToSessionPathW(long wstr wstr)
|
||||
@ stdcall DuplicateConsoleHandle(long long long long)
|
||||
@ stdcall DuplicateHandle(long long long ptr long long long)
|
||||
# @ stub -version=0x601 EnableThreadProfiling
|
||||
@ stdcall EncodePointer(ptr) ntdll.RtlEncodePointer
|
||||
@ stdcall EncodeSystemPointer(ptr) ntdll.RtlEncodeSystemPointer
|
||||
@ stdcall EndUpdateResourceA(long long)
|
||||
@@ -237,16 +266,16 @@
|
||||
@ stdcall EnumLanguageGroupLocalesA(ptr long long ptr)
|
||||
@ stdcall EnumLanguageGroupLocalesW(ptr long long ptr)
|
||||
@ stdcall EnumResourceLanguagesA(long str str ptr long)
|
||||
@ stub -version=0x600+ EnumResourceLanguagesExA
|
||||
@ stub -version=0x600+ EnumResourceLanguagesExW
|
||||
@ stdcall -version=0x600+ EnumResourceLanguagesExA(long str str ptr long long long)
|
||||
@ stdcall -version=0x600+ EnumResourceLanguagesExW(long wstr wstr ptr long long long)
|
||||
@ stdcall EnumResourceLanguagesW(long wstr wstr ptr long)
|
||||
@ stdcall EnumResourceNamesA(long str ptr long)
|
||||
@ stub -version=0x600+ EnumResourceNamesExA
|
||||
@ stub -version=0x600+ EnumResourceNamesExW
|
||||
@ stdcall -version=0x600+ EnumResourceNamesExA(long str ptr long long long)
|
||||
@ stdcall -version=0x600+ EnumResourceNamesExW(long wstr ptr long long long)
|
||||
@ stdcall EnumResourceNamesW(long wstr ptr long)
|
||||
@ stdcall EnumResourceTypesA(long ptr long)
|
||||
@ stub -version=0x600+ EnumResourceTypesExA
|
||||
@ stub -version=0x600+ EnumResourceTypesExW
|
||||
@ stdcall -version=0x600+ EnumResourceTypesExA(long ptr long long long)
|
||||
@ stdcall -version=0x600+ EnumResourceTypesExW(long ptr long long long)
|
||||
@ stdcall EnumResourceTypesW(long ptr long)
|
||||
@ stdcall EnumSystemCodePagesA(ptr long)
|
||||
@ stdcall EnumSystemCodePagesW(ptr long)
|
||||
@@ -264,8 +293,10 @@
|
||||
@ stdcall EnumUILanguagesW(ptr long long)
|
||||
@ stdcall EnumerateLocalComputerNamesA(ptr long str ptr)
|
||||
@ stdcall EnumerateLocalComputerNamesW(ptr long wstr ptr)
|
||||
@ stdcall -version=0x601 -arch=win64 EnterUmsSchedulingMode(ptr)
|
||||
@ stdcall EraseTape(ptr long long)
|
||||
@ stdcall EscapeCommFunction(long long)
|
||||
@ stdcall -version=0x601 -arch=win64 ExecuteUmsThread(ptr)
|
||||
@ stdcall ExitProcess(long) ; FIXME: ntdll.RtlExitUserProcess
|
||||
@ stdcall ExitThread(long) ; FIXME: ntdll.RtlExitUserThread
|
||||
@ stdcall ExitVDM(long long)
|
||||
@@ -295,9 +326,9 @@
|
||||
@ stdcall FindFirstFileExA(str long ptr long ptr long)
|
||||
@ stdcall FindFirstFileExW(wstr long ptr long ptr long)
|
||||
@ stub -version=0x600+ FindFirstFileNameTransactedW
|
||||
@ stub -version=0x600+ FindFirstFileNameW
|
||||
@ stub -version=0x600+ FindFirstFileTransactedA
|
||||
@ stub -version=0x600+ FindFirstFileTransactedW
|
||||
@ stdcall -stub -version=0x600+ FindFirstFileNameW(wstr long ptr ptr)
|
||||
@ stdcall -version=0x600+ FindFirstFileTransactedA(str long ptr long ptr long ptr)
|
||||
@ stdcall -version=0x600+ FindFirstFileTransactedW(wstr long ptr long ptr long ptr)
|
||||
@ stdcall FindFirstFileW(wstr ptr)
|
||||
@ stub -version=0x600+ FindFirstStreamTransactedW
|
||||
@ stdcall FindFirstStreamW(wstr ptr ptr long)
|
||||
@@ -305,8 +336,8 @@
|
||||
@ stdcall FindFirstVolumeMountPointA(str ptr long)
|
||||
@ stdcall FindFirstVolumeMountPointW(wstr ptr long)
|
||||
@ stdcall FindFirstVolumeW(ptr long)
|
||||
@ stub -version=0x600+ FindNLSString
|
||||
@ stub -version=0x600+ FindNLSStringEx
|
||||
@ stdcall -stub -version=0x600+ FindNLSString(long long wstr long wstr long ptr)
|
||||
@ stdcall -stub -version=0x600+ FindNLSStringEx(wstr long wstr long wstr long ptr ptr ptr long)
|
||||
@ stdcall FindNextChangeNotification(long)
|
||||
@ stdcall FindNextFileA(long ptr)
|
||||
@ stub -version=0x600+ FindNextFileNameW
|
||||
@@ -320,6 +351,7 @@
|
||||
@ stdcall FindResourceExA(long str str long)
|
||||
@ stdcall FindResourceExW(long wstr wstr long)
|
||||
@ stdcall FindResourceW(long wstr wstr)
|
||||
@ stdcall -version=0x601+ -stub FindStringOrdinal(long wstr long wstr long long)
|
||||
@ stdcall FindVolumeClose(ptr)
|
||||
@ stdcall FindVolumeMountPointClose(ptr)
|
||||
@ stdcall FlsAlloc(ptr)
|
||||
@@ -329,7 +361,7 @@
|
||||
@ stdcall FlushConsoleInputBuffer(long)
|
||||
@ stdcall FlushFileBuffers(long)
|
||||
@ stdcall FlushInstructionCache(long long long)
|
||||
@ stub -version=0x600+ FlushProcessWriteBuffers
|
||||
@ stdcall -version=0x600+ FlushProcessWriteBuffers() NTDLL.NtFlushProcessWriteBuffers
|
||||
@ stdcall FlushViewOfFile(ptr long)
|
||||
@ stdcall FoldStringA(long str long ptr long)
|
||||
@ stdcall FoldStringW(long wstr long ptr long)
|
||||
@@ -340,11 +372,13 @@
|
||||
@ stdcall FreeEnvironmentStringsW(ptr)
|
||||
@ stdcall FreeLibrary(long)
|
||||
@ stdcall FreeLibraryAndExitThread(long long)
|
||||
@ stub -version=0x600+ FreeLibraryWhenCallbackReturns
|
||||
@ stdcall -version=0x600+ FreeLibraryWhenCallbackReturns(ptr ptr) NTDLL.TpCallbackUnloadDllOnCompletion
|
||||
@ stdcall FreeResource(long)
|
||||
@ stdcall FreeUserPhysicalPages(long long long)
|
||||
@ stdcall GenerateConsoleCtrlEvent(long long)
|
||||
@ stdcall GetACP()
|
||||
@ stdcall -stub -version=0x601+ GetActiveProcessorCount(long)
|
||||
@ stdcall -stub -version=0x601+ GetActiveProcessorGroupCount()
|
||||
@ stdcall -version=0x600+ GetApplicationRecoveryCallback(ptr ptr ptr ptr ptr)
|
||||
@ stub -version=0x600+ GetApplicationRestartSettings
|
||||
@ stdcall GetAtomNameA(long ptr long)
|
||||
@@ -431,12 +465,18 @@
|
||||
@ stdcall -version=0x600+ GetCurrentConsoleFontEx(ptr long ptr)
|
||||
@ stdcall GetCurrentDirectoryA(long ptr)
|
||||
@ stdcall GetCurrentDirectoryW(long ptr)
|
||||
@ stdcall -version=0x602+ GetCurrentPackageFamilyName(ptr ptr)
|
||||
@ stdcall -version=0x602+ GetCurrentPackageFullName(ptr ptr)
|
||||
@ stdcall -version=0x602+ GetCurrentPackageId(ptr ptr)
|
||||
@ stdcall -version=0x602+ GetCurrentPackagePath(ptr ptr)
|
||||
@ stdcall -norelay GetCurrentProcess()
|
||||
@ stdcall -norelay GetCurrentProcessId()
|
||||
@ stdcall GetCurrentProcessorNumber() ntdll.RtlGetCurrentProcessorNumber
|
||||
@ stdcall -version=0x601+ -stub GetCurrentProcessorNumberEx(ptr) ;NTDLL.RtlGetCurrentProcessorNumberEx
|
||||
@ stdcall -norelay GetCurrentThread()
|
||||
@ stdcall -norelay GetCurrentThreadId()
|
||||
@ stdcall -stub -version=0x602+ GetCurrentThreadStackLimits(ptr ptr)
|
||||
@ stdcall -version=0x601+ -arch=win64 GetCurrentUmsThread()
|
||||
@ stdcall GetDateFormatA(long long ptr str ptr long)
|
||||
@ stdcall -version=0x600+ GetDateFormatEx(wstr long ptr wstr wstr long wstr)
|
||||
@ stdcall GetDateFormatW(long long ptr wstr ptr long)
|
||||
@@ -454,7 +494,9 @@
|
||||
@ stdcall GetDriveTypeW(wstr)
|
||||
@ stub -version=0x600+ GetDurationFormat
|
||||
@ stub -version=0x600+ GetDurationFormatEx
|
||||
@ stub -version=0x600+ GetDynamicTimeZoneInformation
|
||||
@ stdcall -stub -version=0x600+ GetDynamicTimeZoneInformation(ptr)
|
||||
@ stdcall -stub -version=0x602+ GetDynamicTimeZoneInformationEffectiveYears(ptr ptr ptr)
|
||||
@ stdcall -stub -version=0x601+ -ret64 -arch=i386,x86_64 GetEnabledXStateFeatures()
|
||||
@ stdcall GetEnvironmentStrings()
|
||||
@ stdcall GetEnvironmentStringsA() GetEnvironmentStrings
|
||||
@ stdcall GetEnvironmentStringsW()
|
||||
@@ -468,8 +510,8 @@
|
||||
@ stdcall GetFileAttributesA(str)
|
||||
@ stdcall GetFileAttributesExA(str long ptr)
|
||||
@ stdcall GetFileAttributesExW(wstr long ptr)
|
||||
@ stub -version=0x600+ GetFileAttributesTransactedA
|
||||
@ stub -version=0x600+ GetFileAttributesTransactedW
|
||||
@ stdcall -version=0x600+ GetFileAttributesTransactedA(str long ptr ptr)
|
||||
@ stdcall -version=0x600+ GetFileAttributesTransactedW(wstr long ptr ptr)
|
||||
@ stdcall GetFileAttributesW(wstr)
|
||||
@ stdcall -version=0x600+ GetFileBandwidthReservation(ptr ptr ptr ptr ptr ptr)
|
||||
@ stdcall GetFileInformationByHandle(long ptr)
|
||||
@@ -508,11 +550,14 @@
|
||||
@ stdcall GetLogicalDriveStringsW(long ptr)
|
||||
@ stdcall GetLogicalDrives()
|
||||
@ stdcall GetLogicalProcessorInformation(ptr ptr)
|
||||
@ stdcall -version=0x601+ GetLogicalProcessorInformationEx(long ptr ptr)
|
||||
@ stdcall GetLongPathNameA(str long long)
|
||||
@ stub -version=0x600+ GetLongPathNameTransactedA
|
||||
@ stub -version=0x600+ GetLongPathNameTransactedW
|
||||
@ stdcall GetLongPathNameW(wstr long long)
|
||||
@ stdcall GetMailslotInfo(long ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ GetMaximumProcessorCount(long)
|
||||
@ stdcall -version=0x601+ GetMaximumProcessorGroupCount()
|
||||
@ stdcall GetModuleFileNameA(long ptr long)
|
||||
@ stdcall GetModuleFileNameW(long ptr long)
|
||||
@ stdcall GetModuleHandleA(str)
|
||||
@@ -524,21 +569,26 @@
|
||||
@ stub -version=0x600+ GetNamedPipeAttribute
|
||||
@ stub -version=0x600+ GetNamedPipeClientComputerNameA
|
||||
@ stub -version=0x600+ GetNamedPipeClientComputerNameW
|
||||
@ stub -version=0x600+ GetNamedPipeClientProcessId
|
||||
@ stub -version=0x600+ GetNamedPipeClientSessionId
|
||||
@ stdcall -version=0x600+ -stub GetNamedPipeClientProcessId(long ptr)
|
||||
@ stdcall -version=0x600+ -stub GetNamedPipeClientSessionId(long ptr)
|
||||
@ stdcall GetNamedPipeHandleStateA(long ptr ptr ptr ptr str long)
|
||||
@ stdcall GetNamedPipeHandleStateW(long ptr ptr ptr ptr wstr long)
|
||||
@ stdcall GetNamedPipeInfo(long ptr ptr ptr ptr)
|
||||
@ stub -version=0x600+ GetNamedPipeServerProcessId
|
||||
@ stub -version=0x600+ GetNamedPipeServerSessionId
|
||||
@ stdcall -stub -version=0x600+ GetNamedPipeServerProcessId(long ptr)
|
||||
@ stdcall -stub -version=0x600+ GetNamedPipeServerSessionId(long ptr)
|
||||
@ stdcall GetNativeSystemInfo(ptr)
|
||||
@ stdcall -version=0x601+ -arch=win64 GetNextUmsListItem(ptr)
|
||||
@ stdcall GetNextVDMCommand(long)
|
||||
@ stdcall -version=0x500-0x502 GetNlsSectionName(long long long str str long)
|
||||
@ stdcall GetNumaAvailableMemoryNode(long ptr)
|
||||
@ stdcall -version=0x601+ GetNumaAvailableMemoryNodeEx(long ptr)
|
||||
@ stdcall GetNumaHighestNodeNumber(ptr)
|
||||
@ stdcall GetNumaNodeProcessorMask(long ptr)
|
||||
@ stdcall -version=0x601+ -stub GetNumaNodeProcessorMaskEx(long ptr)
|
||||
@ stdcall GetNumaProcessorNode(long ptr)
|
||||
@ stub -version=0x600+ GetNumaProximityNode
|
||||
@ stdcall -version=0x601+ GetNumaProcessorNodeEx(ptr ptr)
|
||||
@ stdcall -version=0x600+ GetNumaProximityNode(long ptr)
|
||||
@ stdcall -stub -version=0x601+ GetNumaProximityNodeEx(long ptr)
|
||||
@ stdcall GetNumberFormatA(long long str ptr ptr long)
|
||||
@ stdcall -version=0x600+ GetNumberFormatEx(wstr long wstr ptr wstr long)
|
||||
@ stdcall GetNumberFormatW(long long wstr ptr ptr long)
|
||||
@@ -547,6 +597,12 @@
|
||||
@ stdcall GetNumberOfConsoleMouseButtons(ptr)
|
||||
@ stdcall GetOEMCP()
|
||||
@ stdcall GetOverlappedResult(long ptr ptr long)
|
||||
@ stdcall -stub -version=0x602+ GetOverlappedResultEx(long ptr ptr long long)
|
||||
@ stdcall -stub -version=0xA00+ GetUserDefaultGeoName(ptr long)
|
||||
@ stdcall -version=0x602+ GetPackageFamilyName(long ptr ptr)
|
||||
@ stdcall -version=0x602+ GetPackageFullName(long ptr ptr)
|
||||
@ stdcall -version=0x602+ GetPackagesByPackageFamily(wstr ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x603+ GetPackagePathByFullName(wstr ptr wstr)
|
||||
@ stdcall -stub -version=0x600+ GetPhysicallyInstalledSystemMemory(ptr)
|
||||
@ stdcall GetPriorityClass(long)
|
||||
@ stdcall GetPrivateProfileIntA(str str long str)
|
||||
@@ -561,20 +617,26 @@
|
||||
@ stdcall GetPrivateProfileStructW(wstr wstr ptr long wstr)
|
||||
@ stdcall GetProcAddress(long str)
|
||||
@ stdcall GetProcessAffinityMask(long ptr ptr)
|
||||
@ stub -version=0x600+ GetProcessDEPPolicy
|
||||
@ stdcall -version=0x600+ GetProcessDEPPolicy(ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ GetProcessGroupAffinity(long ptr ptr)
|
||||
@ stdcall GetProcessHandleCount(long ptr)
|
||||
@ stdcall -norelay GetProcessHeap()
|
||||
@ stdcall GetProcessHeaps(long ptr)
|
||||
@ stdcall GetProcessId(long)
|
||||
@ stdcall GetProcessIdOfThread(ptr)
|
||||
@ stdcall -stub -version=0x602+ GetProcessInformation(long long ptr long)
|
||||
@ stdcall GetProcessIoCounters(long ptr)
|
||||
@ stdcall -stub -version=0x602+ GetProcessMitigationPolicy(long long ptr long)
|
||||
@ stdcall -stub -version=0x601+ GetProcessPreferredUILanguages(long ptr ptr ptr)
|
||||
@ stdcall GetProcessPriorityBoost(long ptr)
|
||||
@ stdcall GetProcessShutdownParameters(ptr ptr)
|
||||
# @ stub -version=0x601+ GetProcessorSystemCycleTime
|
||||
@ stdcall GetProcessTimes(long ptr ptr ptr ptr)
|
||||
# @ stub -version=0x601+ GetProcessUserModeExceptionPolicy
|
||||
@ stdcall GetProcessVersion(long)
|
||||
@ stdcall GetProcessWorkingSetSize(long ptr ptr)
|
||||
@ stdcall GetProcessWorkingSetSizeEx(long ptr ptr long)
|
||||
@ stub -version=0x600+ GetProductInfo
|
||||
@ stdcall -stub -version=0x600+ GetProductInfo(long long long long ptr)
|
||||
@ stdcall GetProfileIntA(str str long)
|
||||
@ stdcall GetProfileIntW(wstr wstr long)
|
||||
@ stdcall GetProfileSectionA(str ptr long)
|
||||
@@ -582,7 +644,7 @@
|
||||
@ stdcall GetProfileStringA(str str str ptr long)
|
||||
@ stdcall GetProfileStringW(wstr wstr wstr ptr long)
|
||||
@ stdcall GetQueuedCompletionStatus(long ptr ptr ptr long)
|
||||
@ stub -version=0x600+ GetQueuedCompletionStatusEx
|
||||
@ stdcall -stub -version=0x600+ GetQueuedCompletionStatusEx(ptr ptr long ptr long long)
|
||||
@ stdcall GetShortPathNameA(str ptr long)
|
||||
@ stdcall GetShortPathNameW(wstr ptr long)
|
||||
@ stdcall GetStartupInfoA(ptr)
|
||||
@@ -593,7 +655,8 @@
|
||||
@ stdcall GetStringTypeExA(long long str long ptr)
|
||||
@ stdcall GetStringTypeExW(long long wstr long ptr)
|
||||
@ stdcall GetStringTypeW(long wstr long ptr)
|
||||
@ stub -version=0x600+ GetSystemDEPPolicy
|
||||
@ stdcall -version=0x600+ GetSystemDEPPolicy()
|
||||
@ stdcall -stub -version=0xA00+ GetSystemCpuSetInformation(ptr long ptr ptr long)
|
||||
@ stdcall GetSystemDefaultLCID()
|
||||
@ stdcall GetSystemDefaultLangID()
|
||||
@ stdcall -stub -version=0x600+ GetSystemDefaultLocaleName(ptr long)
|
||||
@@ -620,12 +683,17 @@
|
||||
@ stdcall GetTapeStatus(ptr)
|
||||
@ stdcall GetTempFileNameA(str str long ptr)
|
||||
@ stdcall GetTempFileNameW(wstr wstr long ptr)
|
||||
@ stdcall -stub -version=0xA00+ GetTempPath2A(long ptr)
|
||||
@ stdcall -stub -version=0xA00+ GetTempPath2W(long ptr)
|
||||
@ stdcall GetTempPathA(long ptr)
|
||||
@ stdcall GetTempPathW(long ptr)
|
||||
@ stdcall GetThreadContext(long ptr)
|
||||
@ stdcall -version=0xA00+ GetThreadDescription(long ptr)
|
||||
@ stdcall -stub -version=0x600+ GetThreadErrorMode()
|
||||
@ stdcall -version=0x601+ GetThreadGroupAffinity(long ptr)
|
||||
@ stdcall GetThreadIOPendingFlag(long ptr)
|
||||
@ stdcall GetThreadId(ptr)
|
||||
@ stdcall -stub -version=0xA00+ GetThreadIdealProcessorEx(long ptr)
|
||||
@ stdcall GetThreadLocale()
|
||||
@ stdcall -version=0x600+ GetThreadPreferredUILanguages(long ptr wstr ptr)
|
||||
@ stdcall GetThreadPriority(long)
|
||||
@@ -640,7 +708,9 @@
|
||||
@ stdcall GetTimeFormatW(long long ptr wstr ptr long)
|
||||
@ stdcall GetTimeZoneInformation(ptr)
|
||||
@ stdcall -stub -version=0x600+ GetTimeZoneInformationForYear(long ptr ptr)
|
||||
# @ stub -version=0x600+ GetUILanguageInfo
|
||||
@ stdcall -version=0x600+ GetUILanguageInfo(long wstr wstr ptr ptr)
|
||||
# @ stub -version=0x601+ -arch=win64 GetUmsSystemThreadInformation
|
||||
@ stdcall GetUserDefaultLCID()
|
||||
@ stdcall GetUserDefaultLangID()
|
||||
@ stdcall -version=0x600+ GetUserDefaultLocaleName(wstr long)
|
||||
@@ -663,6 +733,8 @@
|
||||
@ stdcall GetWindowsDirectoryA(ptr long)
|
||||
@ stdcall GetWindowsDirectoryW(ptr long)
|
||||
@ stdcall GetWriteWatch(long ptr long ptr ptr ptr)
|
||||
@ stdcall -stub -version=0x601+ -arch=i386,x86_64 GetXStateFeaturesMask(ptr ptr)
|
||||
@ stdcall -stub -version=0x601+ -arch=i386,x86_64 SetXStateFeaturesMask(ptr int64)
|
||||
@ stdcall GlobalAddAtomA(str)
|
||||
@ stdcall GlobalAddAtomW(wstr)
|
||||
@ stdcall GlobalAlloc(long long)
|
||||
@@ -716,10 +788,12 @@
|
||||
@ stdcall -version=0x600+ InitOnceExecuteOnce(ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x600+ InitOnceInitialize(ptr) ntdll.RtlRunOnceInitialize
|
||||
@ stdcall -version=0x600+ InitializeConditionVariable(ptr) ntdll.RtlInitializeConditionVariable
|
||||
@ stdcall -stub -version=0x601+ InitializeContext(ptr long ptr ptr)
|
||||
@ stdcall -stub -version=0xA00+ InitializeContext2(ptr long ptr ptr int64)
|
||||
@ stdcall InitializeCriticalSection(ptr)
|
||||
@ stdcall InitializeCriticalSectionAndSpinCount(ptr long)
|
||||
@ stdcall -version=0x600+ InitializeCriticalSectionEx(ptr long long)
|
||||
@ stdcall -stub -version=0x600+ InitializeProcThreadAttributeList(ptr long long ptr)
|
||||
@ stdcall -version=0x600+ InitializeProcThreadAttributeList(ptr long long ptr)
|
||||
@ stdcall InitializeSListHead(ptr) ntdll.RtlInitializeSListHead
|
||||
@ stdcall -version=0x600+ InitializeSRWLock(ptr) ntdll.RtlInitializeSRWLock
|
||||
@ stdcall -arch=i386 -ret64 InterlockedCompareExchange64(ptr double double) ntdll.RtlInterlockedCompareExchange64
|
||||
@@ -752,14 +826,16 @@
|
||||
@ stdcall IsProcessorFeaturePresent(long)
|
||||
@ stdcall IsSystemResumeAutomatic()
|
||||
@ stdcall -version=0x600+ IsThreadAFiber()
|
||||
@ stub -version=0x600+ IsThreadpoolTimerSet
|
||||
@ stdcall -version=0x600+ IsThreadpoolTimerSet() NTDLL.TpIsTimerSet
|
||||
@ stdcall IsTimeZoneRedirectionEnabled()
|
||||
@ stub -version=0x600+ IsValidCalDateTime
|
||||
@ stdcall IsValidCodePage(long)
|
||||
@ stdcall IsValidLanguageGroup(long long)
|
||||
@ stdcall IsValidLocale(long long)
|
||||
@ stdcall -version=0x501-0x502 IsValidUILanguage(long)
|
||||
@ stdcall -stub -version=0x602+ IsValidNLSVersion(long wstr ptr)
|
||||
@ stdcall IsWow64Process(ptr ptr)
|
||||
@ stdcall -stub -version=0xA00+ IsWow64Process2(ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ K32EmptyWorkingSet(long) EmptyWorkingSet
|
||||
@ stdcall -version=0x601+ K32EnumDeviceDrivers(ptr long ptr) EnumDeviceDrivers
|
||||
@ stdcall -version=0x601+ K32EnumPageFilesA(ptr ptr) EnumPageFilesA
|
||||
@@ -803,12 +879,14 @@
|
||||
@ stdcall LZSeek(long long long)
|
||||
@ stdcall LZStart()
|
||||
@ stdcall LeaveCriticalSection(ptr) ntdll.RtlLeaveCriticalSection
|
||||
@ stub -version=0x600+ LeaveCriticalSectionWhenCallbackReturns
|
||||
@ stdcall -version=0x600+ LeaveCriticalSectionWhenCallbackReturns(ptr ptr) NTDLL.TpCallbackLeaveCriticalSectionOnCompletion
|
||||
@ stdcall -version=0x601+ LoadAppInitDlls()
|
||||
@ stdcall LoadLibraryA(str)
|
||||
@ stdcall LoadLibraryExA(str long long)
|
||||
@ stdcall LoadLibraryExW(wstr long long)
|
||||
@ stdcall LoadLibraryW(wstr)
|
||||
@ stdcall LoadModule(str ptr)
|
||||
@ stdcall -version=0x602+ LoadPackagedLibrary(wstr long)
|
||||
@ stdcall LoadResource(long long)
|
||||
@ stub -version=0x600+ LoadStringBaseExW
|
||||
@ stub -version=0x600+ LoadStringBaseW
|
||||
@@ -824,6 +902,7 @@
|
||||
@ stdcall LocalSize(long)
|
||||
@ stdcall LocalUnlock(long)
|
||||
@ stdcall -version=0x600+ LocaleNameToLCID(wstr long)
|
||||
@ stdcall -stub -version=0x601+ -arch=i386,x86_64 LocateXStateFeature(ptr long ptr)
|
||||
@ stdcall LockFile(long long long long long)
|
||||
@ stdcall LockFileEx(long long long long long ptr)
|
||||
@ stdcall LockResource(long)
|
||||
@@ -832,6 +911,7 @@
|
||||
@ stdcall MapViewOfFile(long long long long long)
|
||||
@ stdcall MapViewOfFileEx(long long long long long ptr)
|
||||
@ stub -version=0x600+ MapViewOfFileExNuma
|
||||
@ stdcall -stub -version=0x602+ MapViewOfFileFromApp(long long int64 long)
|
||||
@ stdcall Module32First(long ptr)
|
||||
@ stdcall Module32FirstW(long ptr)
|
||||
@ stdcall Module32Next(long ptr)
|
||||
@@ -839,8 +919,8 @@
|
||||
@ stdcall MoveFileA(str str)
|
||||
@ stdcall MoveFileExA(str str long)
|
||||
@ stdcall MoveFileExW(wstr wstr long)
|
||||
@ stub -version=0x600+ MoveFileTransactedA
|
||||
@ stub -version=0x600+ MoveFileTransactedW
|
||||
@ stdcall -version=0x600+ MoveFileTransactedA(str str ptr ptr long ptr)
|
||||
@ stdcall -version=0x600+ MoveFileTransactedW(wstr wstr ptr ptr long ptr)
|
||||
@ stdcall MoveFileW(wstr wstr)
|
||||
@ stdcall MoveFileWithProgressA(str str ptr ptr long)
|
||||
@ stdcall MoveFileWithProgressW(wstr wstr ptr ptr long)
|
||||
@@ -873,10 +953,12 @@
|
||||
@ stub -version=0x600+ OpenPrivateNamespaceA
|
||||
@ stub -version=0x600+ OpenPrivateNamespaceW
|
||||
@ stdcall OpenProcess(long long long)
|
||||
@ stdcall -version=0x601+ OpenProcessToken(long long ptr)
|
||||
@ stdcall OpenProfileUserMapping()
|
||||
@ stdcall OpenSemaphoreA(long long str)
|
||||
@ stdcall OpenSemaphoreW(long long wstr)
|
||||
@ stdcall OpenThread(long long long)
|
||||
@ stdcall -version=0x601+ OpenThreadToken(long long long ptr)
|
||||
@ stdcall OpenWaitableTimerA(long long str)
|
||||
@ stdcall OpenWaitableTimerW(long long wstr)
|
||||
@ stdcall OutputDebugStringA(str)
|
||||
@@ -885,6 +967,11 @@
|
||||
@ stdcall PeekConsoleInputW(ptr ptr long ptr)
|
||||
@ stdcall PeekNamedPipe(long ptr long ptr ptr ptr)
|
||||
@ stdcall PostQueuedCompletionStatus(long long ptr ptr)
|
||||
@ stdcall -version=0x602+ PackageIdFromFullName(wstr long ptr ptr)
|
||||
@ stdcall -version=0x601+ PowerClearRequest(long long)
|
||||
@ stdcall -version=0x601+ PowerCreateRequest(ptr)
|
||||
@ stdcall -version=0x601+ PowerSetRequest(long long)
|
||||
@ stdcall -stub -version=0x602+ PrefetchVirtualMemory(ptr ptr ptr long)
|
||||
@ stdcall PrepareTape(ptr long long)
|
||||
@ stdcall PrivCopyFileExW(wstr wstr ptr ptr long long)
|
||||
@ stdcall PrivMoveFileIdentityW(long long long)
|
||||
@@ -895,14 +982,14 @@
|
||||
@ stdcall ProcessIdToSessionId(long ptr)
|
||||
@ stdcall PulseEvent(long)
|
||||
@ stdcall PurgeComm(long long)
|
||||
@ stub -version=0x600+ QueryActCtxSettingsW
|
||||
@ stdcall -version=0x600+ QueryActCtxSettingsW(long ptr wstr wstr ptr long ptr)
|
||||
@ stdcall QueryActCtxW(long ptr ptr long ptr long ptr)
|
||||
@ stdcall QueryDepthSList(ptr) ntdll.RtlQueryDepthSList
|
||||
@ stdcall QueryDosDeviceA(str ptr long)
|
||||
@ stdcall QueryDosDeviceW(wstr ptr long)
|
||||
@ stdcall -version=0x600+ QueryFullProcessImageNameA(ptr long str ptr)
|
||||
@ stdcall -version=0x600+ QueryFullProcessImageNameW(ptr long wstr ptr)
|
||||
@ stub -version=0x600+ QueryIdleProcessorCycleTime
|
||||
@ stdcall -version=0x600+ QueryIdleProcessorCycleTime(ptr ptr)
|
||||
@ stdcall QueryInformationJobObject(long long ptr long ptr)
|
||||
@ stdcall QueryMemoryResourceNotification(ptr ptr)
|
||||
@ stdcall QueryPerformanceCounter(ptr)
|
||||
@@ -910,6 +997,10 @@
|
||||
@ stub -version=0x600+ QueryProcessAffinityUpdateMode
|
||||
@ stub -version=0x600+ QueryProcessCycleTime
|
||||
@ stub -version=0x600+ QueryThreadCycleTime
|
||||
# @ stub -version=0x601+ QueryThreadProfiling
|
||||
@ stdcall -version=0x601+ QueryThreadpoolStackInformation(ptr ptr)
|
||||
@ stdcall -version=0x601+ -arch=win64 QueryUmsThreadInformation(ptr long ptr long ptr)
|
||||
@ stdcall -stub -version=0x601+ QueryUnbiasedInterruptTime(ptr)
|
||||
@ stdcall QueueUserAPC(ptr long long)
|
||||
@ stdcall QueueUserWorkItem(ptr ptr long)
|
||||
@ stdcall -norelay RaiseException(long long long ptr)
|
||||
@@ -930,6 +1021,49 @@
|
||||
@ stdcall ReadFileEx(long ptr long ptr ptr)
|
||||
@ stdcall ReadFileScatter(long ptr long ptr ptr)
|
||||
@ stdcall ReadProcessMemory(long ptr ptr long ptr)
|
||||
# @ stub -version=0x601+ ReadThreadProfilingData
|
||||
@ stdcall -version=0x601+ RegCloseKey(long)
|
||||
@ stdcall -version=0x601+ RegEnumKeyExA(long long ptr ptr ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ RegEnumKeyExW(long long ptr ptr ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ RegEnumValueA(long long ptr ptr ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ RegEnumValueW(long long ptr ptr ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ RegFlushKey(long)
|
||||
@ stdcall -version=0x601+ RegCreateKeyExA(long str long ptr long long ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ RegCreateKeyExW(long wstr long ptr long long ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ RegDeleteKeyExA(long str long long)
|
||||
@ stdcall -version=0x601+ RegDeleteKeyExW(long wstr long long)
|
||||
@ stdcall -version=0x601+ RegDeleteTreeA(long str)
|
||||
@ stdcall -version=0x601+ RegDeleteTreeW(long wstr)
|
||||
@ stdcall -version=0x601+ RegDeleteValueA(long str)
|
||||
@ stdcall -version=0x601+ RegDeleteValueW(long wstr)
|
||||
# stub -version=0x601+ RegDisablePredefinedCacheEx
|
||||
@ stdcall -version=0x601+ RegGetKeySecurity(long long ptr ptr)
|
||||
@ stdcall -version=0x601+ RegGetValueA(long str str long ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ RegGetValueW(long wstr wstr long ptr ptr ptr)
|
||||
# stub -version=0x601+ RegKrnGetGlobalState
|
||||
# stub -version=0x601+ RegKrnInitialize
|
||||
@ stdcall -version=0x601+ RegLoadKeyA(long str str)
|
||||
@ stdcall -version=0x601+ RegLoadKeyW(long wstr wstr)
|
||||
@ stdcall -version=0x601+ RegLoadMUIStringA(long str str long ptr long str)
|
||||
@ stdcall -version=0x601+ RegLoadMUIStringW(long wstr wstr long ptr long wstr)
|
||||
@ stdcall -version=0x601+ RegNotifyChangeKeyValue(long long long long long)
|
||||
@ stdcall -version=0x601+ RegOpenCurrentUser(long ptr)
|
||||
@ stdcall -version=0x601+ RegOpenKeyExA(long str long long ptr)
|
||||
@ stdcall -version=0x601+ RegOpenKeyExW(long wstr long long ptr)
|
||||
@ stdcall -version=0x601+ RegOpenUserClassesRoot(ptr long long ptr)
|
||||
@ stdcall -version=0x601+ RegQueryInfoKeyA(long ptr ptr ptr ptr ptr ptr ptr ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ RegQueryInfoKeyW(long ptr ptr ptr ptr ptr ptr ptr ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ RegQueryValueExA(long str ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ RegQueryValueExW(long wstr ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x601+ RegRestoreKeyA(long str long)
|
||||
@ stdcall -version=0x601+ RegRestoreKeyW(long wstr long)
|
||||
@ stdcall -version=0x601+ RegSaveKeyExA(long str ptr long)
|
||||
@ stdcall -version=0x601+ RegSaveKeyExW(long wstr ptr long)
|
||||
@ stdcall -version=0x601+ RegSetKeySecurity(long long ptr)
|
||||
@ stdcall -version=0x601+ RegSetValueExA(long str long long ptr long)
|
||||
@ stdcall -version=0x601+ RegSetValueExW(long wstr long long ptr long)
|
||||
@ stdcall -version=0x601+ RegUnLoadKeyA(long str)
|
||||
@ stdcall -version=0x601+ RegUnLoadKeyW(long wstr)
|
||||
@ stdcall -version=0x600+ RegisterApplicationRecoveryCallback(ptr ptr long long)
|
||||
@ stdcall -version=0x600+ RegisterApplicationRestart(wstr long)
|
||||
@ stdcall RegisterConsoleIME(ptr ptr)
|
||||
@@ -942,14 +1076,14 @@
|
||||
@ stdcall RegisterWowExec(long)
|
||||
@ stdcall ReleaseActCtx(ptr)
|
||||
@ stdcall ReleaseMutex(long)
|
||||
@ stub -version=0x600+ ReleaseMutexWhenCallbackReturns
|
||||
@ stdcall -version=0x600+ ReleaseMutexWhenCallbackReturns(ptr long) NTDLL.TpCallbackReleaseMutexOnCompletion
|
||||
@ stdcall -version=0x600+ ReleaseSRWLockExclusive(ptr) ntdll.RtlReleaseSRWLockExclusive
|
||||
@ stdcall -version=0x600+ ReleaseSRWLockShared(ptr) ntdll.RtlReleaseSRWLockShared
|
||||
@ stdcall ReleaseSemaphore(long long ptr)
|
||||
@ stub -version=0x600+ ReleaseSemaphoreWhenCallbackReturns
|
||||
@ stdcall RemoveDirectoryA(str)
|
||||
@ stub -version=0x600+ RemoveDirectoryTransactedA
|
||||
@ stub -version=0x600+ RemoveDirectoryTransactedW
|
||||
@ stdcall -version=0x600+ RemoveDirectoryTransactedA(str ptr)
|
||||
@ stdcall -version=0x600+ RemoveDirectoryTransactedW(wstr ptr)
|
||||
@ stdcall RemoveDirectoryW(wstr)
|
||||
@ stdcall RemoveLocalAlternateComputerNameA(str long)
|
||||
@ stdcall RemoveLocalAlternateComputerNameW(wstr long)
|
||||
@@ -959,11 +1093,16 @@
|
||||
@ stdcall ReplaceFile(wstr wstr wstr long ptr ptr) ReplaceFileW
|
||||
@ stdcall ReplaceFileA(str str str long ptr ptr)
|
||||
@ stdcall ReplaceFileW(wstr wstr wstr long ptr ptr)
|
||||
@ stdcall -version=0x600+ RemoveDllDirectory(ptr)
|
||||
# @ stub -version=0x600+ RemoveSecureMemoryCacheCallback
|
||||
@ stub -version=0x600+ ReplacePartitionUnit
|
||||
@ stdcall RequestDeviceWakeup(long)
|
||||
@ stdcall RequestWakeupLatency(long)
|
||||
@ stdcall ResetEvent(long)
|
||||
@ stdcall ResetWriteWatch(ptr long)
|
||||
@ stdcall -stub -version=0xA00+ ResizePseudoConsole(ptr long)
|
||||
@ stdcall -stub -version=0x602+ ResolveDelayLoadedAPI(ptr ptr ptr ptr ptr long)
|
||||
@ stdcall -stub -version=0x601+ ResolveLocaleName(wstr ptr long)
|
||||
@ stdcall RestoreLastError(long) ntdll.RtlRestoreLastWin32Error
|
||||
@ stdcall ResumeThread(long)
|
||||
@ stdcall -arch=x86_64 RtlAddFunctionTable(ptr long long) ntdll.RtlAddFunctionTable
|
||||
@@ -981,13 +1120,15 @@
|
||||
@ stdcall -arch=x86_64 RtlRestoreContext(ptr ptr) ntdll.RtlRestoreContext
|
||||
@ stdcall RtlUnwind(ptr ptr ptr ptr) ntdll.RtlUnwind
|
||||
@ stdcall -arch=x86_64 RtlUnwindEx(ptr ptr ptr ptr ptr ptr) ntdll.RtlUnwindEx
|
||||
@ stdcall -arch=x86_64 RtlVirtualUnwind(long int64 int64 ptr ptr ptr ptr ptr) ntdll.RtlVirtualUnwind
|
||||
@ stdcall -arch=x86_64 RtlVirtualUnwind(ptr ptr ptr long) ntdll.RtlVirtualUnwind
|
||||
@ stdcall -stub -version=0xA00+ -arch=x86_64 -norelay RtlIsEcCode(ptr)
|
||||
@ stdcall RtlZeroMemory(ptr long) ntdll.RtlZeroMemory
|
||||
@ stdcall ScrollConsoleScreenBufferA(long ptr ptr ptr ptr)
|
||||
@ stdcall ScrollConsoleScreenBufferW(long ptr ptr ptr ptr)
|
||||
@ stdcall SearchPathA(str str str long ptr ptr)
|
||||
@ stdcall SearchPathW(wstr wstr wstr long ptr ptr)
|
||||
@ stdcall -version=0x500-0x502 SetCPGlobal(long)
|
||||
@ stdcall -version=0x602+ SetCachedSigningLevel(ptr long long long)
|
||||
@ stdcall SetCalendarInfoA(long long long str)
|
||||
@ stdcall SetCalendarInfoW(long long long wstr)
|
||||
@ stdcall SetClientTimeZoneInformation(ptr)
|
||||
@@ -1039,6 +1180,7 @@
|
||||
@ stdcall SetCurrentDirectoryW(wstr)
|
||||
@ stdcall SetDefaultCommConfigA(str ptr long)
|
||||
@ stdcall SetDefaultCommConfigW(wstr ptr long)
|
||||
@ stdcall -version=0x600+ SetDefaultDllDirectories(long)
|
||||
@ stdcall SetDllDirectoryA(str)
|
||||
@ stdcall SetDllDirectoryW(wstr)
|
||||
@ stub -version=0x600+ SetDynamicTimeZoneInformation
|
||||
@@ -1049,7 +1191,7 @@
|
||||
@ stdcall SetEnvironmentVariableW(wstr wstr)
|
||||
@ stdcall SetErrorMode(long)
|
||||
@ stdcall SetEvent(long)
|
||||
@ stub -version=0x600+ SetEventWhenCallbackReturns
|
||||
@ stdcall -version=0x600+ SetEventWhenCallbackReturns(ptr long) NTDLL.TpCallbackSetEventOnCompletion
|
||||
@ stdcall SetFileApisToANSI()
|
||||
@ stdcall SetFileApisToOEM()
|
||||
@ stdcall SetFileAttributesA(str long)
|
||||
@@ -1058,7 +1200,7 @@
|
||||
@ stdcall SetFileAttributesW(wstr long)
|
||||
@ stdcall -version=0x600+ SetFileBandwidthReservation(ptr long long long ptr ptr)
|
||||
@ stdcall SetFileCompletionNotificationModes(ptr long)
|
||||
@ stub -version=0x600+ SetFileInformationByHandle
|
||||
@ stdcall -version=0x600+ SetFileInformationByHandle(long long ptr long)
|
||||
@ stub -version=0x600+ SetFileIoOverlappedRange
|
||||
@ stdcall SetFilePointer(long long ptr long)
|
||||
@ stdcall SetFilePointerEx(long double ptr long)
|
||||
@@ -1088,13 +1230,19 @@
|
||||
@ stdcall SetPriorityClass(long long)
|
||||
@ stdcall SetProcessAffinityMask(long long)
|
||||
@ stub -version=0x600+ SetProcessAffinityUpdateMode
|
||||
@ stub -version=0x600+ SetProcessDEPPolicy
|
||||
@ stdcall -stub -version=0xA00+ SetProcessDefaultCpuSets(ptr ptr long)
|
||||
@ stdcall -version=0x600+ SetProcessDEPPolicy(ptr)
|
||||
@ stdcall -stub -version=0x602+ SetProcessInformation(long long ptr long)
|
||||
@ stdcall -stub -version=0x602+ SetProcessMitigationPolicy(long ptr long)
|
||||
@ stdcall -version=0x601+ SetProcessPreferredUILanguages(long ptr ptr)
|
||||
@ stdcall SetProcessPriorityBoost(long long)
|
||||
@ stdcall SetProcessShutdownParameters(long long)
|
||||
# @ stub -version=0x601+ SetProcessUserModeExceptionPolicy
|
||||
@ stdcall SetProcessWorkingSetSize(long long long)
|
||||
@ stdcall SetProcessWorkingSetSizeEx(long long long long)
|
||||
@ stdcall -stub -version=0x600+ SetSearchPathMode(long)
|
||||
@ stdcall SetStdHandle(long long)
|
||||
@ stub -version=0x600+ SetStdHandleEx
|
||||
@ stdcall -stub -version=0x600+ SetStdHandleEx(long long ptr)
|
||||
@ stdcall SetSystemFileCacheSize(long long long)
|
||||
@ stdcall SetSystemPowerState(long long)
|
||||
@ stdcall SetSystemTime(ptr)
|
||||
@@ -1104,29 +1252,40 @@
|
||||
@ stdcall SetTermsrvAppInstallMode(long)
|
||||
@ stdcall SetThreadAffinityMask(long long)
|
||||
@ stdcall SetThreadContext(long ptr)
|
||||
@ stdcall -stub -version=0x600+ SetThreadErrorMode(long ptr)
|
||||
@ stdcall -version=0xA00+ SetThreadDescription(ptr wstr)
|
||||
@ stdcall -version=0x600+ SetThreadErrorMode(long ptr)
|
||||
@ stdcall SetThreadExecutionState(long)
|
||||
@ stdcall -version=0x601+ SetThreadGroupAffinity(long ptr ptr)
|
||||
@ stdcall SetThreadIdealProcessor(long long)
|
||||
@ stdcall -version=0x601+ SetThreadIdealProcessorEx(long ptr ptr)
|
||||
@ stdcall -version=0x602+ SetThreadInformation(long long ptr long)
|
||||
@ stdcall SetThreadLocale(long)
|
||||
@ stdcall -version=0x600+ SetThreadPreferredUILanguages(long wstr ptr)
|
||||
@ stdcall SetThreadPriority(long long)
|
||||
@ stdcall SetThreadPriorityBoost(long long)
|
||||
@ stdcall -stub -version=0xA00+ SetThreadSelectedCpuSets(ptr ptr long)
|
||||
@ stdcall SetThreadStackGuarantee(ptr)
|
||||
@ stdcall -version=0x601+ SetThreadToken(ptr ptr)
|
||||
@ stdcall SetThreadUILanguage(long)
|
||||
@ stub -version=0x600+ SetThreadpoolThreadMaximum
|
||||
@ stub -version=0x600+ SetThreadpoolThreadMinimum
|
||||
@ stub -version=0x600+ SetThreadpoolTimer
|
||||
@ stub -version=0x600+ SetThreadpoolWait
|
||||
@ stdcall -version=0x601+ SetThreadpoolStackInformation(ptr ptr)
|
||||
@ stdcall -version=0x600+ SetThreadpoolThreadMaximum(ptr long) NTDLL.TpSetPoolMaxThreads
|
||||
@ stdcall -version=0x600+ SetThreadpoolThreadMinimum(ptr long) NTDLL.TpSetPoolMinThreads
|
||||
@ stdcall -version=0x600+ SetThreadpoolTimer(ptr ptr long long) NTDLL.TpSetTimer
|
||||
@ stdcall -version=0x600+ SetThreadpoolWait(ptr long ptr) NTDLL.TpSetWait
|
||||
@ stdcall SetTimeZoneInformation(ptr)
|
||||
@ stdcall SetTimerQueueTimer(long ptr ptr long long long)
|
||||
@ stdcall -version=0x601+ -arch=win64 SetUmsThreadInformation(ptr long ptr long)
|
||||
@ stdcall SetUnhandledExceptionFilter(ptr)
|
||||
@ stdcall SetUserGeoID(long)
|
||||
@ stdcall -stub -version=0xA00+ SetUserGeoName(wstr)
|
||||
@ stdcall SetVDMCurrentDirectories(long long)
|
||||
@ stdcall SetVolumeLabelA(str str)
|
||||
@ stdcall SetVolumeLabelW(wstr wstr)
|
||||
@ stdcall SetVolumeMountPointA(str str)
|
||||
@ stdcall SetVolumeMountPointW(wstr wstr)
|
||||
@ stdcall SetWaitableTimer(long ptr long ptr ptr long)
|
||||
@ stdcall -version=0x601+ SetWaitableTimerEx(long ptr long ptr ptr ptr long)
|
||||
# @ stub -version=0x601+ SetXStateFeaturesMask
|
||||
@ stdcall SetupComm(long long long)
|
||||
@ stdcall ShowConsoleCursor(long long)
|
||||
@ stdcall SignalObjectAndWait(long long long long)
|
||||
@@ -1135,8 +1294,8 @@
|
||||
@ stdcall -version=0x600+ SleepConditionVariableCS(ptr ptr long)
|
||||
@ stdcall -version=0x600+ SleepConditionVariableSRW(ptr ptr long long)
|
||||
@ stdcall SleepEx(long long)
|
||||
@ stub -version=0x600+ StartThreadpoolIo
|
||||
@ stdcall -stub -version=0x600+ SubmitThreadpoolWork(ptr)
|
||||
@ stdcall -version=0x600+ StartThreadpoolIo(ptr) NTDLL.TpStartAsyncIoOperation
|
||||
@ stdcall -version=0x600+ SubmitThreadpoolWork(ptr) NTDLL.TpPostWork
|
||||
@ stdcall SuspendThread(long)
|
||||
@ stdcall SwitchToFiber(ptr)
|
||||
@ stdcall SwitchToThread()
|
||||
@@ -1155,8 +1314,10 @@
|
||||
@ stdcall Toolhelp32ReadProcessMemory(long ptr ptr long ptr)
|
||||
@ stdcall TransactNamedPipe(long ptr long ptr long ptr ptr)
|
||||
@ stdcall TransmitCommChar(long long)
|
||||
@ stdcall -version=0x601+ TryAcquireSRWLockExclusive(ptr) NTDLL.RtlTryAcquireSRWLockExclusive
|
||||
@ stdcall -version=0x6001 TryAcquireSRWLockShared(ptr) NTDLL.RtlTryAcquireSRWLockShared
|
||||
@ stdcall TryEnterCriticalSection(ptr) ntdll.RtlTryEnterCriticalSection
|
||||
@ stub -version=0x600+ TrySubmitThreadpoolCallback
|
||||
@ stdcall TrySubmitThreadpoolCallback(ptr ptr ptr)
|
||||
@ stdcall TzSpecificLocalTimeToSystemTime(ptr ptr ptr)
|
||||
@ stdcall UTRegister(long str str str ptr ptr ptr)
|
||||
@ stdcall UTUnRegister(long)
|
||||
@@ -1165,12 +1326,12 @@
|
||||
@ stdcall UnlockFileEx(long long long long ptr)
|
||||
@ stdcall UnmapViewOfFile(ptr)
|
||||
@ stub -version=0x600+ UnregisterApplicationRecoveryCallback
|
||||
@ stub -version=0x600+ UnregisterApplicationRestart
|
||||
@ stdcall -version=0x600+ UnregisterApplicationRestart()
|
||||
@ stdcall UnregisterConsoleIME()
|
||||
@ stdcall UnregisterWait(long)
|
||||
@ stdcall UnregisterWaitEx(long long)
|
||||
@ stub -version=0x600+ UpdateCalendarDayOfWeek
|
||||
@ stdcall -stub -version=0x600+ UpdateProcThreadAttribute(ptr long ptr ptr ptr ptr ptr)
|
||||
@ stdcall -version=0x600+ UpdateProcThreadAttribute(ptr long ptr ptr ptr ptr ptr)
|
||||
@ stdcall UpdateResourceA(long str str long ptr long)
|
||||
@ stdcall UpdateResourceW(long wstr wstr long ptr long)
|
||||
@ stdcall VDMConsoleOperation(long long)
|
||||
@@ -1186,7 +1347,7 @@
|
||||
@ stdcall VerifyVersionInfoW(long long double)
|
||||
@ stdcall VirtualAlloc(ptr long long long)
|
||||
@ stdcall VirtualAllocEx(long ptr long long long)
|
||||
@ stub -version=0x600+ VirtualAllocExNuma
|
||||
@ stdcall -stub -version=0x600+ VirtualAllocExNuma(long ptr long long long long)
|
||||
@ stdcall VirtualFree(ptr long long)
|
||||
@ stdcall VirtualFreeEx(long ptr long long)
|
||||
@ stdcall VirtualLock(ptr long)
|
||||
@@ -1198,24 +1359,27 @@
|
||||
@ stdcall WTSGetActiveConsoleSessionId()
|
||||
@ stdcall WaitCommEvent(long ptr ptr)
|
||||
@ stdcall WaitForDebugEvent(ptr long)
|
||||
@ stdcall -version=0xA00+ WaitForDebugEventEx(ptr long)
|
||||
@ stdcall WaitForMultipleObjects(long ptr long long)
|
||||
@ stdcall WaitForMultipleObjectsEx(long ptr long long long)
|
||||
@ stdcall WaitForSingleObject(long long)
|
||||
@ stdcall WaitForSingleObjectEx(long long long)
|
||||
@ stub -version=0x600+ WaitForThreadpoolIoCallbacks
|
||||
@ stub -version=0x600+ WaitForThreadpoolTimerCallbacks
|
||||
@ stub -version=0x600+ WaitForThreadpoolWaitCallbacks
|
||||
@ stdcall -stub -version=0x600+ WaitForThreadpoolWorkCallbacks(ptr long)
|
||||
@ stdcall -version=0x600+ WaitForThreadpoolIoCallbacks(ptr long) NTDLL.TpWaitForIoCompletion
|
||||
@ stdcall -version=0x600+ WaitForThreadpoolTimerCallbacks(ptr long) NTDLL.TpWaitForTimer
|
||||
@ stdcall -version=0x600+ WaitForThreadpoolWaitCallbacks(ptr long) NTDLL.TpWaitForWait
|
||||
@ stdcall -version=0x600+ WaitForThreadpoolWorkCallbacks(ptr long) ntdll.TpWaitForWork
|
||||
@ stdcall WaitNamedPipeA(str long)
|
||||
@ stdcall WaitNamedPipeW(wstr long)
|
||||
@ stdcall -version=0x600+ WakeAllConditionVariable(ptr) ntdll.RtlWakeAllConditionVariable
|
||||
@ stdcall -version=0x600+ WakeConditionVariable(ptr) ntdll.RtlWakeConditionVariable
|
||||
@ stub -version=0x600+ WerGetFlags
|
||||
@ stub -version=0x600+ WerRegisterFile
|
||||
@ stub -version=0x600+ WerRegisterMemoryBlock
|
||||
@ stub -version=0x600+ WerSetFlags
|
||||
@ stub -version=0x600+ WerUnregisterFile
|
||||
@ stub -version=0x600+ WerUnregisterMemoryBlock
|
||||
@ stdcall -version=0x600+ WerGetFlags(ptr ptr)
|
||||
@ stdcall -version=0x600+ WerRegisterFile(wstr long long)
|
||||
@ stdcall -version=0x600+ WerRegisterMemoryBlock(ptr long)
|
||||
@ stdcall -version=0x601+ WerRegisterRuntimeExceptionModule(wstr ptr)
|
||||
@ stdcall -version=0x600+ WerSetFlags(long)
|
||||
@ stdcall -version=0x600+ WerUnregisterFile(wstr)
|
||||
@ stdcall -version=0x600+ WerUnregisterMemoryBlock(ptr)
|
||||
@ stdcall -version=0x601+ WerUnregisterRuntimeExceptionModule(wstr ptr)
|
||||
@ stub -version=0x600+ WerpCleanupMessageMapping
|
||||
@ stub -version=0x600+ WerpInitiateRemoteRecovery
|
||||
@ stub -version=0x600+ WerpNotifyLoadStringResource
|
||||
@@ -1226,9 +1390,10 @@
|
||||
@ stdcall WinExec(str long)
|
||||
@ stdcall Wow64DisableWow64FsRedirection(ptr)
|
||||
@ stdcall Wow64EnableWow64FsRedirection(long)
|
||||
@ stub -version=0x600+ Wow64GetThreadContext
|
||||
@ stdcall Wow64GetThreadContext(long ptr)
|
||||
@ stdcall -stub -version=0x601+ Wow64GetThreadSelectorEntry(long long ptr)
|
||||
@ stdcall Wow64RevertWow64FsRedirection(ptr)
|
||||
@ stub -version=0x600+ Wow64SetThreadContext
|
||||
@ stdcall Wow64SetThreadContext(long ptr)
|
||||
@ stub -version=0x600+ Wow64SuspendThread
|
||||
@ stdcall WriteConsoleA(long ptr long ptr ptr)
|
||||
@ stdcall WriteConsoleInputA(long ptr long ptr)
|
||||
|
@@ -156,55 +156,6 @@ GetApplicationRestart(IN HANDLE hProcess,
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
VOID
|
||||
WINAPI
|
||||
ApplicationRecoveryFinished(IN BOOL bSuccess)
|
||||
{
|
||||
UNIMPLEMENTED;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
HRESULT
|
||||
WINAPI
|
||||
ApplicationRecoveryInProgress(OUT PBOOL pbCancelled)
|
||||
{
|
||||
UNIMPLEMENTED;
|
||||
return E_FAIL;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
HRESULT
|
||||
WINAPI
|
||||
RegisterApplicationRecoveryCallback(IN APPLICATION_RECOVERY_CALLBACK pRecoveryCallback,
|
||||
IN PVOID pvParameter OPTIONAL,
|
||||
DWORD dwPingInterval,
|
||||
DWORD dwFlags)
|
||||
{
|
||||
UNIMPLEMENTED;
|
||||
return E_FAIL;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
HRESULT
|
||||
WINAPI
|
||||
RegisterApplicationRestart(IN PCWSTR pwzCommandline OPTIONAL,
|
||||
IN DWORD dwFlags)
|
||||
{
|
||||
UNIMPLEMENTED;
|
||||
return E_FAIL;
|
||||
}
|
||||
|
||||
|
||||
/*
|
||||
@@ -683,18 +634,6 @@ GetThreadPreferredUILanguages(
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
LANGID
|
||||
WINAPI
|
||||
GetThreadUILanguage(VOID)
|
||||
{
|
||||
UNIMPLEMENTED;
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return 0;
|
||||
}
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
@@ -729,10 +668,6 @@ GetUserPreferredUILanguages(
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
*/
|
||||
#if 0 // Tis is Windows 7+
|
||||
BOOL
|
||||
WINAPI
|
||||
SetProcessPreferredUILanguages(
|
||||
@@ -744,7 +679,6 @@ SetProcessPreferredUILanguages(
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return FALSE;
|
||||
}
|
||||
#endif
|
||||
|
||||
/*
|
||||
* @unimplemented
|
||||
|
1043
dll/win32/kernel32/wine/process.c
Normal file
1043
dll/win32/kernel32/wine/process.c
Normal file
File diff suppressed because it is too large
Load Diff
192
dll/win32/kernel32/wine/transact.c
Normal file
192
dll/win32/kernel32/wine/transact.c
Normal file
@@ -0,0 +1,192 @@
|
||||
/*
|
||||
* File handling functions
|
||||
*
|
||||
* Copyright 1993 Erik Bos
|
||||
* Copyright 1996, 2004 Alexandre Julliard
|
||||
* Copyright 2003 Eric Pouech
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*
|
||||
*/
|
||||
|
||||
#include <k32.h>
|
||||
|
||||
#define NDEBUG
|
||||
#include <debug.h>
|
||||
DEBUG_CHANNEL(kernel32file);
|
||||
|
||||
|
||||
/**************************************************************************
|
||||
* MoveFileTransactedA (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI MoveFileTransactedA(const char *source, const char *dest, LPPROGRESS_ROUTINE progress, void *data, DWORD flags, HANDLE handle)
|
||||
{
|
||||
FIXME("(%s, %s, %p, %p, %ld, %p) semi-stub\n", debugstr_a(source), debugstr_a(dest), progress, data, flags, handle);
|
||||
|
||||
return MoveFileWithProgressA(source, dest, progress, data, flags);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
* MoveFileTransactedW (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI MoveFileTransactedW(const WCHAR *source, const WCHAR *dest, LPPROGRESS_ROUTINE progress, void *data, DWORD flags, HANDLE handle)
|
||||
{
|
||||
FIXME("(%s, %s, %p, %p, %ld, %p) semi-stub\n", debugstr_w(source), debugstr_w(dest), progress, data, flags, handle);
|
||||
|
||||
return MoveFileWithProgressW(source, dest, progress, data, flags);
|
||||
}
|
||||
|
||||
/*************************************************************************
|
||||
* CreateFileTransactedA (KERNEL32.@)
|
||||
*/
|
||||
HANDLE WINAPI DECLSPEC_HOTPATCH CreateFileTransactedA( LPCSTR name, DWORD access, DWORD sharing,
|
||||
LPSECURITY_ATTRIBUTES sa, DWORD creation,
|
||||
DWORD attributes, HANDLE template,
|
||||
HANDLE transaction, PUSHORT version,
|
||||
PVOID param )
|
||||
{
|
||||
FIXME("(%s %lx %lx %p %lx %lx %p %p %p %p): semi-stub\n", debugstr_a(name), access, sharing, sa,
|
||||
creation, attributes, template, transaction, version, param);
|
||||
return CreateFileA(name, access, sharing, sa, creation, attributes, template);
|
||||
}
|
||||
|
||||
/*************************************************************************
|
||||
* CreateFileTransactedW (KERNEL32.@)
|
||||
*/
|
||||
HANDLE WINAPI DECLSPEC_HOTPATCH CreateFileTransactedW( LPCWSTR name, DWORD access, DWORD sharing,
|
||||
LPSECURITY_ATTRIBUTES sa, DWORD creation,
|
||||
DWORD attributes, HANDLE template, HANDLE transaction,
|
||||
PUSHORT version, PVOID param )
|
||||
{
|
||||
FIXME("(%s %lx %lx %p %lx %lx %p %p %p %p): semi-stub\n", debugstr_w(name), access, sharing, sa,
|
||||
creation, attributes, template, transaction, version, param);
|
||||
return CreateFileW(name, access, sharing, sa, creation, attributes, template);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CreateDirectoryTransactedA (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH CreateDirectoryTransactedA(LPCSTR template, LPCSTR path, LPSECURITY_ATTRIBUTES sa, HANDLE transaction)
|
||||
{
|
||||
FIXME("(%s %s %p %p): semi-stub\n", debugstr_a(template), debugstr_a(path), sa, transaction);
|
||||
return CreateDirectoryExA(template, path, sa);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* CreateDirectoryTransactedW (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH CreateDirectoryTransactedW(LPCWSTR template, LPCWSTR path, LPSECURITY_ATTRIBUTES sa, HANDLE transaction)
|
||||
{
|
||||
FIXME("(%s %s %p %p): semi-stub\n", debugstr_w(template), debugstr_w(path), sa, transaction);
|
||||
return CreateDirectoryExW(template, path, sa);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* DeleteFileTransactedA (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH DeleteFileTransactedA(LPCSTR path, HANDLE transaction)
|
||||
{
|
||||
FIXME("(%s %p): semi-stub\n", debugstr_a(path), transaction);
|
||||
return DeleteFileA(path);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* DeleteFileTransactedW (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH DeleteFileTransactedW(LPCWSTR path, HANDLE transaction)
|
||||
{
|
||||
FIXME("(%s %p): semi-stub\n", debugstr_w(path), transaction);
|
||||
return DeleteFileW(path);
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
* FindFirstFileTransactedA (KERNEL32.@)
|
||||
*/
|
||||
HANDLE WINAPI DECLSPEC_HOTPATCH FindFirstFileTransactedA( LPCSTR filename, FINDEX_INFO_LEVELS level,
|
||||
LPVOID data, FINDEX_SEARCH_OPS search_op,
|
||||
LPVOID filter, DWORD flags, HANDLE transaction )
|
||||
{
|
||||
FIXME("(%s %d %p %d %p %lx %p): semi-stub\n", debugstr_a(filename), level, data, search_op, filter, flags, transaction);
|
||||
return FindFirstFileExA(filename, level, data, search_op, filter, flags);
|
||||
}
|
||||
|
||||
/******************************************************************************
|
||||
* FindFirstFileTransactedW (KERNEL32.@)
|
||||
*/
|
||||
HANDLE WINAPI DECLSPEC_HOTPATCH FindFirstFileTransactedW( LPCWSTR filename, FINDEX_INFO_LEVELS level,
|
||||
LPVOID data, FINDEX_SEARCH_OPS search_op,
|
||||
LPVOID filter, DWORD flags, HANDLE transaction )
|
||||
{
|
||||
FIXME("(%s %d %p %d %p %lx %p): semi-stub\n", debugstr_w(filename), level, data, search_op, filter, flags, transaction);
|
||||
return FindFirstFileExW(filename, level, data, search_op, filter, flags);
|
||||
}
|
||||
|
||||
|
||||
/**************************************************************************
|
||||
* GetFileAttributesTransactedA (KERNEL32.@)
|
||||
*/
|
||||
DWORD WINAPI DECLSPEC_HOTPATCH GetFileAttributesTransactedA(LPCSTR name, GET_FILEEX_INFO_LEVELS level, void *ptr, HANDLE transaction)
|
||||
{
|
||||
FIXME("(%s %p): semi-stub\n", debugstr_a(name), transaction);
|
||||
return GetFileAttributesExA(name, level, ptr);
|
||||
}
|
||||
|
||||
/**************************************************************************
|
||||
* GetFileAttributesTransactedW (KERNEL32.@)
|
||||
*/
|
||||
DWORD WINAPI DECLSPEC_HOTPATCH GetFileAttributesTransactedW(LPCWSTR name, GET_FILEEX_INFO_LEVELS level, void *ptr, HANDLE transaction)
|
||||
{
|
||||
FIXME("(%s %p): semi-stub\n", debugstr_w(name), transaction);
|
||||
return GetFileAttributesExW(name, level, ptr);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* RemoveDirectoryTransactedA (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH RemoveDirectoryTransactedA(LPCSTR path, HANDLE transaction)
|
||||
{
|
||||
FIXME("(%s %p): semi-stub\n", debugstr_a(path), transaction);
|
||||
return RemoveDirectoryA(path);
|
||||
}
|
||||
|
||||
/***********************************************************************
|
||||
* RemoveDirectoryTransactedW (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI DECLSPEC_HOTPATCH RemoveDirectoryTransactedW(LPCWSTR path, HANDLE transaction)
|
||||
{
|
||||
FIXME("(%s %p): semi-stub\n", debugstr_w(path), transaction);
|
||||
return RemoveDirectoryW(path);
|
||||
}
|
||||
|
||||
/*************************************************************************
|
||||
* CreateHardLinkTransactedA (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI CreateHardLinkTransactedA(LPCSTR link, LPCSTR target, LPSECURITY_ATTRIBUTES sa, HANDLE transaction)
|
||||
{
|
||||
FIXME("(%s %s %p %p): stub\n", debugstr_a(link), debugstr_a(target), sa, transaction);
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/*************************************************************************
|
||||
* CreateHardLinkTransactedW (KERNEL32.@)
|
||||
*/
|
||||
BOOL WINAPI CreateHardLinkTransactedW(LPCWSTR link, LPCWSTR target, LPSECURITY_ATTRIBUTES sa, HANDLE transaction)
|
||||
{
|
||||
FIXME("(%s %s %p %p): stub\n", debugstr_w(link), debugstr_w(target), sa, transaction);
|
||||
SetLastError(ERROR_CALL_NOT_IMPLEMENTED);
|
||||
return FALSE;
|
||||
}
|
||||
|
@@ -2163,7 +2163,6 @@ BOOL WINAPI EnumTimeFormatsW(TIMEFMT_ENUMPROCW proc, LCID lcid, DWORD flags)
|
||||
return NLS_EnumTimeFormats(&ctxt);
|
||||
}
|
||||
|
||||
#if _WIN32_WINNT >= 0x600
|
||||
/**************************************************************************
|
||||
* EnumTimeFormatsEx (KERNEL32.@)
|
||||
*/
|
||||
@@ -2180,7 +2179,6 @@ BOOL WINAPI EnumTimeFormatsEx(TIMEFMT_ENUMPROCEX proc, const WCHAR *locale, DWOR
|
||||
|
||||
return NLS_EnumTimeFormats(&ctxt);
|
||||
}
|
||||
#endif /* _WIN32_WINNT >= 0x600 */
|
||||
|
||||
struct enumcalendar_context {
|
||||
enum enum_callback_type type; /* callback kind */
|
||||
|
@@ -80,7 +80,6 @@ static const WCHAR szLangGroupsKeyName[] = {
|
||||
'L','a','n','g','u','a','g','e',' ','G','r','o','u','p','s',0
|
||||
};
|
||||
|
||||
#if (WINVER >= 0x0600)
|
||||
/* Charset to codepage map, sorted by name. */
|
||||
static const struct charset_entry
|
||||
{
|
||||
@@ -141,7 +140,6 @@ static const struct charset_entry
|
||||
{ "KOI8U", 21866 },
|
||||
{ "UTF8", CP_UTF8 }
|
||||
};
|
||||
#endif
|
||||
|
||||
|
||||
struct locale_name
|
||||
@@ -332,7 +330,6 @@ static const union cptable *get_codepage_table( unsigned int codepage )
|
||||
}
|
||||
#endif // !__REACTOS__
|
||||
|
||||
#if (WINVER >= 0x0600)
|
||||
/***********************************************************************
|
||||
* charset_cmp (internal)
|
||||
*/
|
||||
@@ -362,7 +359,6 @@ static UINT find_charset( const WCHAR *name )
|
||||
if (entry) return entry->codepage;
|
||||
return 0;
|
||||
}
|
||||
#endif // (WINVER >= 0x0600)
|
||||
|
||||
static LANGID get_default_sublang( LANGID lang )
|
||||
{
|
||||
@@ -382,7 +378,6 @@ static LANGID get_default_sublang( LANGID lang )
|
||||
return lang;
|
||||
}
|
||||
|
||||
#if (WINVER >= 0x0600)
|
||||
/***********************************************************************
|
||||
* find_locale_id_callback
|
||||
*/
|
||||
@@ -576,7 +571,6 @@ done:
|
||||
EnumResourceLanguagesW( kernel32_handle, (LPCWSTR)RT_STRING, (LPCWSTR)LOCALE_ILANGUAGE,
|
||||
find_locale_id_callback, (LPARAM)name );
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
/***********************************************************************
|
||||
@@ -1332,7 +1326,6 @@ BOOL WINAPI GetThreadPreferredUILanguages( DWORD flags, ULONG *count, WCHAR *buf
|
||||
return get_dummy_preferred_ui_language( flags, count, buf, size );
|
||||
}
|
||||
|
||||
#if (WINVER >= 0x0600)
|
||||
/******************************************************************************
|
||||
* GetUserPreferredUILanguages (KERNEL32.@)
|
||||
*/
|
||||
@@ -1358,7 +1351,6 @@ BOOL WINAPI GetUserPreferredUILanguages( DWORD flags, ULONG *count, WCHAR *buffe
|
||||
|
||||
return get_dummy_preferred_ui_language( flags, count, buffer, size );
|
||||
}
|
||||
#endif // (WINVER >= 0x0600)
|
||||
#endif // !__REACTOS__
|
||||
|
||||
/***********************************************************************
|
||||
@@ -1399,7 +1391,6 @@ LANGID WINAPI GetSystemDefaultUILanguage(void)
|
||||
return lang;
|
||||
}
|
||||
|
||||
#if (WINVER >= 0x0600)
|
||||
/***********************************************************************
|
||||
* LocaleNameToLCID (KERNEL32.@)
|
||||
*/
|
||||
@@ -1441,8 +1432,6 @@ INT WINAPI LCIDToLocaleName( LCID lcid, LPWSTR name, INT count, DWORD flags )
|
||||
|
||||
return GetLocaleInfoW( lcid, LOCALE_SNAME | LOCALE_NOUSEROVERRIDE, name, count );
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
/******************************************************************************
|
||||
* get_locale_registry_value
|
||||
@@ -1806,7 +1795,6 @@ INT WINAPI GetLocaleInfoW( LCID lcid, LCTYPE lctype, LPWSTR buffer, INT len )
|
||||
return ret;
|
||||
}
|
||||
|
||||
#if (WINVER >= 0x0600)
|
||||
/******************************************************************************
|
||||
* GetLocaleInfoEx (KERNEL32.@)
|
||||
*/
|
||||
@@ -1860,7 +1848,6 @@ GetUserDefaultLocaleName(
|
||||
TRACE( "GetUserDefaultLocaleName not implemented (lpLocaleName=%s, cchLocaleName=%d)\n", debugstr_w(lpLocaleName), cchLocaleName);
|
||||
return 0;
|
||||
}
|
||||
#endif
|
||||
|
||||
/******************************************************************************
|
||||
* SetLocaleInfoA [KERNEL32.@]
|
||||
@@ -4152,8 +4139,7 @@ INT WINAPI CompareStringA(LCID lcid, DWORD flags,
|
||||
if (str2W != buf2W) HeapFree(GetProcessHeap(), 0, str2W);
|
||||
return ret;
|
||||
}
|
||||
|
||||
#if (WINVER >= 0x0600)
|
||||
#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) || (DLL_EXPORT_VERSION >= _WIN32_WINNT_VISTA)
|
||||
/******************************************************************************
|
||||
* CompareStringOrdinal (KERNEL32.@)
|
||||
*/
|
||||
@@ -4174,8 +4160,7 @@ INT WINAPI CompareStringOrdinal(const WCHAR *str1, INT len1, const WCHAR *str2,
|
||||
if (ret > 0) return CSTR_GREATER_THAN;
|
||||
return CSTR_EQUAL;
|
||||
}
|
||||
#endif // (WINVER >= 0x0600)
|
||||
|
||||
#endif
|
||||
#ifndef __REACTOS__
|
||||
/*************************************************************************
|
||||
* lstrcmp (KERNEL32.@)
|
||||
|
@@ -11,32 +11,69 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
|
||||
typedef enum AppPolicyMediaFoundationCodecLoading
|
||||
{
|
||||
AppPolicyMediaFoundationCodecLoading_All = 0,
|
||||
AppPolicyMediaFoundationCodecLoading_InboxOnly = 1,
|
||||
} AppPolicyMediaFoundationCodecLoading;
|
||||
|
||||
typedef enum AppPolicyProcessTerminationMethod
|
||||
{
|
||||
AppPolicyProcessTerminationMethod_ExitProcess = 0,
|
||||
AppPolicyProcessTerminationMethod_ExitProcess = 0,
|
||||
AppPolicyProcessTerminationMethod_TerminateProcess = 1,
|
||||
} AppPolicyProcessTerminationMethod;
|
||||
|
||||
typedef enum AppPolicyThreadInitializationType
|
||||
{
|
||||
AppPolicyThreadInitializationType_None = 0,
|
||||
AppPolicyThreadInitializationType_None = 0,
|
||||
AppPolicyThreadInitializationType_InitializeWinRT = 1,
|
||||
} AppPolicyThreadInitializationType;
|
||||
|
||||
typedef enum AppPolicyShowDeveloperDiagnostic
|
||||
{
|
||||
AppPolicyShowDeveloperDiagnostic_None = 0,
|
||||
AppPolicyShowDeveloperDiagnostic_None = 0,
|
||||
AppPolicyShowDeveloperDiagnostic_ShowUI = 1,
|
||||
} AppPolicyShowDeveloperDiagnostic;
|
||||
|
||||
typedef enum AppPolicyWindowingModel
|
||||
{
|
||||
AppPolicyWindowingModel_None = 0,
|
||||
AppPolicyWindowingModel_Universal = 1,
|
||||
AppPolicyWindowingModel_None = 0,
|
||||
AppPolicyWindowingModel_Universal = 1,
|
||||
AppPolicyWindowingModel_ClassicDesktop = 2,
|
||||
AppPolicyWindowingModel_ClassicPhone = 3
|
||||
AppPolicyWindowingModel_ClassicPhone = 3
|
||||
} AppPolicyWindowingModel;
|
||||
|
||||
typedef struct PACKAGE_VERSION
|
||||
{
|
||||
union
|
||||
{
|
||||
UINT64 Version;
|
||||
struct
|
||||
{
|
||||
USHORT Revision;
|
||||
USHORT Build;
|
||||
USHORT Minor;
|
||||
USHORT Major;
|
||||
}
|
||||
DUMMYSTRUCTNAME;
|
||||
}
|
||||
DUMMYUNIONNAME;
|
||||
}
|
||||
PACKAGE_VERSION;
|
||||
|
||||
typedef struct PACKAGE_ID
|
||||
{
|
||||
UINT32 reserved;
|
||||
UINT32 processorArchitecture;
|
||||
PACKAGE_VERSION version;
|
||||
WCHAR *name;
|
||||
WCHAR *publisher;
|
||||
WCHAR *resourceId;
|
||||
WCHAR *publisherId;
|
||||
}
|
||||
PACKAGE_ID;
|
||||
|
||||
WINBASEAPI
|
||||
_Check_return_
|
||||
_Success_(return == ERROR_SUCCESS)
|
||||
|
42
sdk/include/psdk/ioringapi.h
Normal file
42
sdk/include/psdk/ioringapi.h
Normal file
@@ -0,0 +1,42 @@
|
||||
/*
|
||||
* Copyright (C) 2023 Paul Gofman for CodeWeavers
|
||||
*
|
||||
* This library is free software; you can redistribute it and/or
|
||||
* modify it under the terms of the GNU Lesser General Public
|
||||
* License as published by the Free Software Foundation; either
|
||||
* version 2.1 of the License, or (at your option) any later version.
|
||||
*
|
||||
* This library is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
* Lesser General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU Lesser General Public
|
||||
* License along with this library; if not, write to the Free Software
|
||||
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
|
||||
*/
|
||||
|
||||
#ifndef __IORINGAPI_H_
|
||||
#define __IORINGAPI_H_
|
||||
|
||||
#include <ntioring_x.h>
|
||||
|
||||
struct IORING_CAPABILITIES
|
||||
{
|
||||
IORING_VERSION MaxVersion;
|
||||
UINT32 MaxSubmissionQueueSize;
|
||||
UINT32 MaxCompletionQueueSize;
|
||||
IORING_FEATURE_FLAGS FeatureFlags;
|
||||
};
|
||||
typedef struct IORING_CAPABILITIES IORING_CAPABILITIES;
|
||||
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
HRESULT WINAPI QueryIoRingCapabilities(IORING_CAPABILITIES *caps);
|
||||
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
#endif
|
@@ -11,6 +11,15 @@
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef enum _THREAD_INFORMATION_CLASS
|
||||
{
|
||||
ThreadMemoryPriority,
|
||||
ThreadAbsoluteCpuPriority,
|
||||
ThreadDynamicCodePolicy,
|
||||
ThreadPowerThrottling,
|
||||
ThreadInformationClassMax
|
||||
} THREAD_INFORMATION_CLASS;
|
||||
|
||||
WINBASEAPI
|
||||
BOOL
|
||||
WINAPI
|
||||
|
@@ -240,6 +240,11 @@ extern "C" {
|
||||
#define COPY_FILE_OPEN_SOURCE_FOR_WRITE 0x00000004
|
||||
#define COPY_FILE_ALLOW_DECRYPTED_DESTINATION 0x00000008
|
||||
|
||||
#if 1//(_WIN32_WINNT >= 0x0600)
|
||||
#define COPY_FILE_COPY_SYMLINK 0x00000800
|
||||
#define COPY_FILE_NO_BUFFERING 0x00001000
|
||||
#endif
|
||||
|
||||
#define FILE_FLAG_WRITE_THROUGH 0x80000000
|
||||
#define FILE_FLAG_OVERLAPPED 0x40000000
|
||||
#define FILE_FLAG_NO_BUFFERING 0x20000000
|
||||
@@ -646,7 +651,14 @@ extern "C" {
|
||||
|
||||
#define INIT_ONCE_STATIC_INIT RTL_RUN_ONCE_INIT
|
||||
|
||||
#if (_WIN32_WINNT >= 0x0600)
|
||||
#if 1//(_WIN32_WINNT >= 0x0600)
|
||||
typedef enum _DEP_SYSTEM_POLICY_TYPE {
|
||||
AlwaysOff = 0,
|
||||
AlwaysOn = 1,
|
||||
OptIn = 2,
|
||||
OptOut = 3
|
||||
} DEP_SYSTEM_POLICY_TYPE;
|
||||
|
||||
#define PROCESS_DEP_ENABLE 0x00000001
|
||||
#define PROCESS_DEP_DISABLE_ATL_THUNK_EMULATION 0x00000002
|
||||
#endif
|
||||
@@ -1439,7 +1451,7 @@ typedef enum _COMPUTER_NAME_FORMAT {
|
||||
} COMPUTER_NAME_FORMAT;
|
||||
#endif /* (_WIN32_WINNT >= 0x0500) */
|
||||
|
||||
#if (_WIN32_WINNT >= 0x0600)
|
||||
#if 1//(_WIN32_WINNT >= 0x0600)
|
||||
typedef RTL_SRWLOCK SRWLOCK, *PSRWLOCK;
|
||||
typedef RTL_CONDITION_VARIABLE CONDITION_VARIABLE, *PCONDITION_VARIABLE;
|
||||
#endif
|
||||
@@ -1451,25 +1463,54 @@ typedef struct _PROC_THREAD_ATTRIBUTE_LIST *PPROC_THREAD_ATTRIBUTE_LIST, *LPPROC
|
||||
#define PROC_THREAD_ATTRIBUTE_INPUT 0x00020000
|
||||
#define PROC_THREAD_ATTRIBUTE_ADDITIVE 0x00040000
|
||||
|
||||
typedef enum _PROC_THREAD_ATTRIBUTE_NUM {
|
||||
ProcThreadAttributeParentProcess = 0,
|
||||
ProcThreadAttributeHandleList = 2,
|
||||
ProcThreadAttributeGroupAffinity = 3,
|
||||
ProcThreadAttributeIdealProcessor = 5,
|
||||
ProcThreadAttributeUmsThread = 6,
|
||||
ProcThreadAttributeMitigationPolicy = 7,
|
||||
ProcThreadAttributeSecurityCapabilities = 9,
|
||||
ProcThreadAttributeProtectionLevel = 11,
|
||||
ProcThreadAttributeJobList = 13,
|
||||
ProcThreadAttributeChildProcessPolicy = 14,
|
||||
ProcThreadAttributeAllApplicationPackagesPolicy = 15,
|
||||
ProcThreadAttributeWin32kFilter = 16,
|
||||
ProcThreadAttributeSafeOpenPromptOriginClaim = 17,
|
||||
typedef enum _PROC_THREAD_ATTRIBUTE_NUM
|
||||
{
|
||||
ProcThreadAttributeParentProcess = 0,
|
||||
ProcThreadAttributeExtendedFlags = 1,
|
||||
ProcThreadAttributeHandleList = 2,
|
||||
ProcThreadAttributeGroupAffinity = 3,
|
||||
ProcThreadAttributePreferredNode = 4,
|
||||
ProcThreadAttributeIdealProcessor = 5,
|
||||
ProcThreadAttributeUmsThread = 6,
|
||||
ProcThreadAttributeMitigationPolicy = 7,
|
||||
ProcThreadAttributeSecurityCapabilities = 9,
|
||||
ProcThreadAttributeProtectionLevel = 11,
|
||||
ProcThreadAttributeJobList = 13,
|
||||
ProcThreadAttributeChildProcessPolicy = 14,
|
||||
ProcThreadAttributeAllApplicationPackagesPolicy = 15,
|
||||
ProcThreadAttributeWin32kFilter = 16,
|
||||
ProcThreadAttributeSafeOpenPromptOriginClaim = 17,
|
||||
ProcThreadAttributeDesktopAppPolicy = 18,
|
||||
ProcThreadAttributePseudoConsole = 22,
|
||||
ProcThreadAttributeMitigationAuditPolicy = 24,
|
||||
ProcThreadAttributeMachineType = 25,
|
||||
ProcThreadAttributeComponentFilter = 26,
|
||||
ProcThreadAttributeEnableOptionalXStateFeatures = 27,
|
||||
ProcThreadAttributeTrustedApp = 29,
|
||||
} PROC_THREAD_ATTRIBUTE_NUM;
|
||||
|
||||
#define PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR (ProcThreadAttributeIdealProcessor | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_HANDLE_LIST (ProcThreadAttributeHandleList | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
|
||||
#define PROC_THREAD_ATTRIBUTE_PARENT_PROCESS (ProcThreadAttributeParentProcess | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_EXTENDED_FLAGS (ProcThreadAttributeExtendedFlags | PROC_THREAD_ATTRIBUTE_INPUT | PROC_THREAD_ATTRIBUTE_ADDITIVE)
|
||||
#define PROC_THREAD_ATTRIBUTE_HANDLE_LIST (ProcThreadAttributeHandleList | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_GROUP_AFFINITY (ProcThreadAttributeGroupAffinity | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_PREFERRED_NODE (ProcThreadAttributePreferredNode | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_IDEAL_PROCESSOR (ProcThreadAttributeIdealProcessor | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_UMS_THREAD (ProcThreadAttributeUmsThread | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_MITIGATION_POLICY (ProcThreadAttributeMitigationPolicy | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_SECURITY_CAPABILITIES (ProcThreadAttributeSecurityCapabilities | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_PROTECTION_LEVEL (ProcThreadAttributeProtectionLevel | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_JOB_LIST (ProcThreadAttributeJobList | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_CHILD_PROCESS_POLICY (ProcThreadAttributeChildProcessPolicy | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_ALL_APPLICATION_PACKAGES_POLICY (ProcThreadAttributeAllApplicationPackagesPolicy | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_WIN32K_FILTER (ProcThreadAttributeWin32kFilter | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_DESKTOP_APP_POLICY (ProcThreadAttributeDesktopAppPolicy | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE (ProcThreadAttributePseudoConsole | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_MITIGATION_AUDIT_POLICY (ProcThreadAttributeMitigationAuditPolicy | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_MACHINE_TYPE (ProcThreadAttributeMachineType | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_COMPONENT_FILTER (ProcThreadAttributeComponentFilter | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
#define PROC_THREAD_ATTRIBUTE_ENABLE_OPTIONAL_XSTATE_FEATURES (ProcThreadAttributeEnableOptionalXStateFeatures | PROC_THREAD_ATTRIBUTE_THREAD | PROC_THREAD_ATTRIBUTE_INPUT)
|
||||
|
||||
|
||||
typedef DWORD
|
||||
(WINAPI *PFE_EXPORT_FUNC)(
|
||||
@@ -1494,7 +1535,7 @@ typedef LONG(CALLBACK *PTOP_LEVEL_EXCEPTION_FILTER)(LPEXCEPTION_POINTERS);
|
||||
typedef PTOP_LEVEL_EXCEPTION_FILTER LPTOP_LEVEL_EXCEPTION_FILTER;
|
||||
typedef void(APIENTRY *PAPCFUNC)(ULONG_PTR);
|
||||
typedef void(CALLBACK *PTIMERAPCROUTINE)(PVOID,DWORD,DWORD);
|
||||
#if (_WIN32_WINNT >= 0x0600)
|
||||
#if 1//(_WIN32_WINNT >= 0x0600)
|
||||
typedef DWORD (WINAPI *APPLICATION_RECOVERY_CALLBACK)(PVOID);
|
||||
#endif
|
||||
|
||||
@@ -3985,6 +4026,28 @@ typedef BOOL
|
||||
_Inout_opt_ PVOID Parameter,
|
||||
_Outptr_opt_result_maybenull_ PVOID *Context);
|
||||
|
||||
typedef struct _REASON_CONTEXT
|
||||
{
|
||||
ULONG Version;
|
||||
DWORD Flags;
|
||||
union
|
||||
{
|
||||
struct
|
||||
{
|
||||
HMODULE LocalizedReasonModule;
|
||||
ULONG LocalizedReasonId;
|
||||
ULONG ReasonStringCount;
|
||||
LPWSTR *ReasonStrings;
|
||||
} Detailed;
|
||||
LPWSTR SimpleReasonString;
|
||||
} Reason;
|
||||
} REASON_CONTEXT, *PREASON_CONTEXT;
|
||||
|
||||
#define RESOURCE_ENUM_LN 0x0001
|
||||
#define RESOURCE_ENUM_MUI 0x0002
|
||||
#define RESOURCE_ENUM_MUI_SYSTEM 0x0004
|
||||
#define RESOURCE_ENUM_VALIDATE 0x0008
|
||||
|
||||
#if _WIN32_WINNT >= 0x0601
|
||||
|
||||
#define COPYFILE2_MESSAGE_COPY_OFFLOAD 0x00000001L
|
||||
|
@@ -495,7 +495,7 @@ extern "C" {
|
||||
#define LGRPID_GEORGIAN 16
|
||||
#define LGRPID_ARMENIAN 17
|
||||
|
||||
#if (WINVER >= 0x0500)
|
||||
#if 1//(WINVER >= 0x0500)
|
||||
#define LOCALE_SYEARMONTH 0x1006
|
||||
#define LOCALE_SENGCURRNAME 0x1007
|
||||
#define LOCALE_SNATIVECURRNAME 0x1008
|
||||
@@ -513,7 +513,7 @@ extern "C" {
|
||||
#define CAL_RETURN_NUMBER LOCALE_RETURN_NUMBER
|
||||
#define CAL_USE_CP_ACP LOCALE_USE_CP_ACP
|
||||
#endif /* (WINVER >= 0x0500) */
|
||||
#if WINVER >= 0x0600
|
||||
#if 1//WINVER >= 0x0600
|
||||
#define IDN_ALLOW_UNASSIGNED 0x1
|
||||
#define IDN_USE_STD3_ASCII_RULES 0x2
|
||||
#define VS_ALLOW_LATIN 0x1
|
||||
@@ -523,7 +523,7 @@ extern "C" {
|
||||
typedef long LONG_PTR;
|
||||
#endif
|
||||
|
||||
#if (WINVER >= 0x0600)
|
||||
#if 1//(WINVER >= 0x0600)
|
||||
#define MUI_FULL_LANGUAGE 0x01
|
||||
#define MUI_LANGUAGE_ID 0x04
|
||||
#define MUI_LANGUAGE_NAME 0x08
|
||||
|
@@ -467,19 +467,252 @@ NtQueryObject(
|
||||
_In_ ULONG ObjectInformationLength,
|
||||
_Out_opt_ PULONG ReturnLength);
|
||||
|
||||
typedef enum _SYSTEM_INFORMATION_CLASS
|
||||
{
|
||||
typedef enum _SYSTEM_INFORMATION_CLASS {
|
||||
SystemBasicInformation = 0,
|
||||
SystemCpuInformation = 1,
|
||||
SystemPerformanceInformation = 2,
|
||||
SystemTimeOfDayInformation = 3,
|
||||
SystemTimeOfDayInformation = 3, /* was SystemTimeInformation */
|
||||
SystemPathInformation = 4,
|
||||
SystemProcessInformation = 5,
|
||||
SystemCallCountInformation = 6,
|
||||
SystemDeviceInformation = 7,
|
||||
SystemProcessorPerformanceInformation = 8,
|
||||
SystemFlagsInformation = 9,
|
||||
SystemCallTimeInformation = 10,
|
||||
SystemModuleInformation = 11,
|
||||
SystemLocksInformation = 12,
|
||||
SystemStackTraceInformation = 13,
|
||||
SystemPagedPoolInformation = 14,
|
||||
SystemNonPagedPoolInformation = 15,
|
||||
SystemHandleInformation = 16,
|
||||
SystemObjectInformation = 17,
|
||||
SystemPageFileInformation = 18,
|
||||
SystemVdmInstemulInformation = 19,
|
||||
SystemVdmBopInformation = 20,
|
||||
SystemFileCacheInformation = 21,
|
||||
SystemPoolTagInformation = 22,
|
||||
SystemInterruptInformation = 23,
|
||||
SystemDpcBehaviorInformation = 24,
|
||||
SystemFullMemoryInformation = 25,
|
||||
SystemNotImplemented6 = 25,
|
||||
SystemLoadGdiDriverInformation = 26,
|
||||
SystemUnloadGdiDriverInformation = 27,
|
||||
SystemTimeAdjustmentInformation = 28,
|
||||
SystemTimeAdjustment = 28,
|
||||
SystemSummaryMemoryInformation = 29,
|
||||
SystemMirrorMemoryInformation = 30,
|
||||
SystemPerformanceTraceInformation = 31,
|
||||
SystemObsolete0 = 32,
|
||||
SystemExceptionInformation = 33,
|
||||
SystemCrashDumpStateInformation = 34,
|
||||
SystemKernelDebuggerInformation = 35,
|
||||
SystemContextSwitchInformation = 36,
|
||||
SystemRegistryQuotaInformation = 37,
|
||||
SystemExtendServiceTableInformation = 38,
|
||||
SystemPrioritySeparation = 39,
|
||||
SystemVerifierAddDriverInformation = 40,
|
||||
SystemVerifierRemoveDriverInformation = 41,
|
||||
SystemProcessorIdleInformation = 42,
|
||||
SystemLegacyDriverInformation = 43,
|
||||
SystemCurrentTimeZoneInformation = 44,
|
||||
SystemLookasideInformation = 45,
|
||||
SystemTimeSlipNotification = 46,
|
||||
SystemSessionCreate = 47,
|
||||
SystemSessionDetach = 48,
|
||||
SystemSessionInformation = 49,
|
||||
SystemRangeStartInformation = 50,
|
||||
SystemVerifierInformation = 51,
|
||||
SystemVerifierThunkExtend = 52,
|
||||
SystemSessionProcessesInformation = 53,
|
||||
SystemLoadGdiDriverInSystemSpace = 54,
|
||||
SystemNumaProcessorMap = 55,
|
||||
SystemPrefetcherInformation = 56,
|
||||
SystemExtendedProcessInformation = 57,
|
||||
SystemRecommendedSharedDataAlignment = 58,
|
||||
SystemComPlusPackage = 59,
|
||||
SystemNumaAvailableMemory = 60,
|
||||
SystemProcessorPowerInformation = 61,
|
||||
SystemEmulationBasicInformation = 62,
|
||||
SystemEmulationProcessorInformation = 63,
|
||||
SystemExtendedHandleInformation = 64,
|
||||
SystemLostDelayedWriteInformation = 65,
|
||||
SystemBigPoolInformation = 66,
|
||||
SystemSessionPoolTagInformation = 67,
|
||||
SystemSessionMappedViewInformation = 68,
|
||||
SystemHotpatchInformation = 69,
|
||||
SystemObjectSecurityMode = 70,
|
||||
SystemWatchdogTimerHandler = 71,
|
||||
SystemWatchdogTimerInformation = 72,
|
||||
SystemLogicalProcessorInformation = 73,
|
||||
SystemWow64SharedInformationObsolete = 74,
|
||||
SystemRegisterFirmwareTableInformationHandler = 75,
|
||||
SystemFirmwareTableInformation = 76,
|
||||
SystemModuleInformationEx = 77,
|
||||
SystemVerifierTriageInformation = 78,
|
||||
SystemSuperfetchInformation = 79,
|
||||
SystemMemoryListInformation = 80,
|
||||
SystemFileCacheInformationEx = 81,
|
||||
SystemThreadPriorityClientIdInformation = 82,
|
||||
SystemProcessorIdleCycleTimeInformation = 83,
|
||||
SystemVerifierCancellationInformation = 84,
|
||||
SystemProcessorPowerInformationEx = 85,
|
||||
SystemRefTraceInformation = 86,
|
||||
SystemSpecialPoolInformation = 87,
|
||||
SystemProcessIdInformation = 88,
|
||||
SystemErrorPortInformation = 89,
|
||||
SystemBootEnvironmentInformation = 90,
|
||||
SystemHypervisorInformation = 91,
|
||||
SystemVerifierInformationEx = 92,
|
||||
SystemTimeZoneInformation = 93,
|
||||
SystemImageFileExecutionOptionsInformation = 94,
|
||||
SystemCoverageInformation = 95,
|
||||
SystemPrefetchPatchInformation = 96,
|
||||
SystemVerifierFaultsInformation = 97,
|
||||
SystemSystemPartitionInformation = 98,
|
||||
SystemSystemDiskInformation = 99,
|
||||
SystemProcessorPerformanceDistribution = 100,
|
||||
SystemNumaProximityNodeInformation = 101,
|
||||
SystemDynamicTimeZoneInformation = 102,
|
||||
SystemCodeIntegrityInformation = 103,
|
||||
SystemProcessorMicrocodeUpdateInformation = 104,
|
||||
SystemProcessorBrandString = 105,
|
||||
SystemVirtualAddressInformation = 106,
|
||||
SystemLogicalProcessorInformationEx = 107,
|
||||
SystemProcessorCycleTimeInformation = 108,
|
||||
SystemStoreInformation = 109,
|
||||
SystemRegistryAppendString = 110,
|
||||
SystemAitSamplingValue = 111,
|
||||
SystemVhdBootInformation = 112,
|
||||
SystemCpuQuotaInformation = 113,
|
||||
SystemNativeBasicInformation = 114,
|
||||
SystemErrorPortTimeouts = 115,
|
||||
SystemLowPriorityIoInformation = 116,
|
||||
SystemTpmBootEntropyInformation = 117,
|
||||
SystemVerifierCountersInformation = 118,
|
||||
SystemPagedPoolInformationEx = 119,
|
||||
SystemSystemPtesInformationEx = 120,
|
||||
SystemNodeDistanceInformation = 121,
|
||||
SystemAcpiAuditInformation = 122,
|
||||
SystemBasicPerformanceInformation = 123,
|
||||
SystemQueryPerformanceCounterInformation = 124,
|
||||
SystemSessionBigPoolInformation = 125,
|
||||
SystemBootGraphicsInformation = 126,
|
||||
SystemScrubPhysicalMemoryInformation = 127,
|
||||
SystemBadPageInformation = 128,
|
||||
SystemProcessorProfileControlArea = 129,
|
||||
SystemCombinePhysicalMemoryInformation = 130,
|
||||
SystemEntropyInterruptTimingInformation = 131,
|
||||
SystemConsoleInformation = 132,
|
||||
SystemPlatformBinaryInformation = 133,
|
||||
SystemPolicyInformation = 134,
|
||||
} SYSTEM_INFORMATION_CLASS;
|
||||
SystemHypervisorProcessorCountInformation = 135,
|
||||
SystemDeviceDataInformation = 136,
|
||||
SystemDeviceDataEnumerationInformation = 137,
|
||||
SystemMemoryTopologyInformation = 138,
|
||||
SystemMemoryChannelInformation = 139,
|
||||
SystemBootLogoInformation = 140,
|
||||
SystemProcessorPerformanceInformationEx = 141,
|
||||
SystemCriticalProcessErrorLogInformation = 142,
|
||||
SystemSecureBootPolicyInformation = 143,
|
||||
SystemPageFileInformationEx = 144,
|
||||
SystemSecureBootInformation = 145,
|
||||
SystemEntropyInterruptTimingRawInformation = 146,
|
||||
SystemPortableWorkspaceEfiLauncherInformation = 147,
|
||||
SystemFullProcessInformation = 148,
|
||||
SystemKernelDebuggerInformationEx = 149,
|
||||
SystemBootMetadataInformation = 150,
|
||||
SystemSoftRebootInformation = 151,
|
||||
SystemElamCertificateInformation = 152,
|
||||
SystemOfflineDumpConfigInformation = 153,
|
||||
SystemProcessorFeaturesInformation = 154,
|
||||
SystemRegistryReconciliationInformation = 155,
|
||||
SystemEdidInformation = 156,
|
||||
SystemManufacturingInformation = 157,
|
||||
SystemEnergyEstimationConfigInformation = 158,
|
||||
SystemHypervisorDetailInformation = 159,
|
||||
SystemProcessorCycleStatsInformation = 160,
|
||||
SystemVmGenerationCountInformation = 161,
|
||||
SystemTrustedPlatformModuleInformation = 162,
|
||||
SystemKernelDebuggerFlags = 163,
|
||||
SystemCodeIntegrityPolicyInformation = 164,
|
||||
SystemIsolatedUserModeInformation = 165,
|
||||
SystemHardwareSecurityTestInterfaceResultsInformation = 166,
|
||||
SystemSingleModuleInformation = 167,
|
||||
SystemAllowedCpuSetsInformation = 168,
|
||||
SystemVsmProtectionInformation = 169,
|
||||
SystemInterruptCpuSetsInformation = 170,
|
||||
SystemSecureBootPolicyFullInformation = 171,
|
||||
SystemCodeIntegrityPolicyFullInformation = 172,
|
||||
SystemAffinitizedInterruptProcessorInformation = 173,
|
||||
SystemRootSiloInformation = 174,
|
||||
SystemCpuSetInformation = 175,
|
||||
SystemCpuSetTagInformation = 176,
|
||||
SystemWin32WerStartCallout = 177,
|
||||
SystemSecureKernelProfileInformation = 178,
|
||||
SystemCodeIntegrityPlatformManifestInformation = 179,
|
||||
SystemInterruptSteeringInformation = 180,
|
||||
SystemSupportedProcessorArchitectures = 181,
|
||||
SystemMemoryUsageInformation = 182,
|
||||
SystemCodeIntegrityCertificateInformation = 183,
|
||||
SystemPhysicalMemoryInformation = 184,
|
||||
SystemControlFlowTransition = 185,
|
||||
SystemKernelDebuggingAllowed = 186,
|
||||
SystemActivityModerationExeState = 187,
|
||||
SystemActivityModerationUserSettings = 188,
|
||||
SystemCodeIntegrityPoliciesFullInformation = 189,
|
||||
SystemCodeIntegrityUnlockInformation = 190,
|
||||
SystemIntegrityQuotaInformation = 191,
|
||||
SystemFlushInformation = 192,
|
||||
SystemProcessorIdleMaskInformation = 193,
|
||||
SystemSecureDumpEncryptionInformation = 194,
|
||||
SystemWriteConstraintInformation = 195,
|
||||
SystemKernelVaShadowInformation = 196,
|
||||
SystemHypervisorSharedPageInformation = 197,
|
||||
SystemFirmwareBootPerformanceInformation = 198,
|
||||
SystemCodeIntegrityVerificationInformation = 199,
|
||||
SystemFirmwarePartitionInformation = 200,
|
||||
SystemSpeculationControlInformation = 201,
|
||||
SystemDmaGuardPolicyInformation = 202,
|
||||
SystemEnclaveLaunchControlInformation = 203,
|
||||
SystemWorkloadAllowedCpuSetsInformation = 204,
|
||||
SystemCodeIntegrityUnlockModeInformation = 205,
|
||||
SystemLeapSecondInformation = 206,
|
||||
SystemFlags2Information = 207,
|
||||
SystemSecurityModelInformation = 208,
|
||||
SystemCodeIntegritySyntheticCacheInformation = 209,
|
||||
SystemFeatureConfigurationInformation = 210,
|
||||
SystemFeatureConfigurationSectionInformation = 211,
|
||||
SystemFeatureUsageSubscriptionInformation = 212,
|
||||
SystemSecureSpeculationControlInformation = 213,
|
||||
SystemSpacesBootInformation = 214,
|
||||
SystemFwRamdiskInformation = 215,
|
||||
SystemWheaIpmiHardwareInformation = 216,
|
||||
SystemDifSetRuleClassInformation = 217,
|
||||
SystemDifClearRuleClassInformation = 218,
|
||||
SystemDifApplyPluginVerificationOnDriver = 219,
|
||||
SystemDifRemovePluginVerificationOnDriver = 220,
|
||||
SystemShadowStackInformation = 221,
|
||||
SystemBuildVersionInformation = 222,
|
||||
SystemPoolLimitInformation = 223,
|
||||
SystemCodeIntegrityAddDynamicStore = 224,
|
||||
SystemCodeIntegrityClearDynamicStores = 225,
|
||||
SystemDifPoolTrackingInformation = 226,
|
||||
SystemPoolZeroingInformation = 227,
|
||||
SystemDpcWatchdogInformation = 228,
|
||||
SystemDpcWatchdogInformation2 = 229,
|
||||
SystemSupportedProcessorArchitectures2 = 230,
|
||||
SystemSingleProcessorRelationshipInformation = 231,
|
||||
SystemXfgCheckFailureInformation = 232,
|
||||
SystemIommuStateInformation = 233,
|
||||
SystemHypervisorMinrootInformation = 234,
|
||||
SystemHypervisorBootPagesInformation = 235,
|
||||
SystemPointerAuthInformation = 236,
|
||||
SystemSecureKernelDebuggerInformation = 237,
|
||||
SystemOriginalImageFeatureInformation = 238,
|
||||
#ifdef __WINESRC__
|
||||
SystemWineVersionInformation = 1000,
|
||||
#endif
|
||||
} SYSTEM_INFORMATION_CLASS, *PSYSTEM_INFORMATION_CLASS;
|
||||
|
||||
typedef struct _SYSTEM_BASIC_INFORMATION
|
||||
{
|
||||
|
@@ -163,6 +163,50 @@ typedef struct _CLIENT_ID
|
||||
HANDLE UniqueThread;
|
||||
} CLIENT_ID, *PCLIENT_ID;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
UINT next;
|
||||
UINT id;
|
||||
ULONGLONG addr;
|
||||
ULONGLONG size;
|
||||
UINT args[4];
|
||||
} CROSS_PROCESS_WORK_ENTRY;
|
||||
|
||||
typedef union
|
||||
{
|
||||
struct
|
||||
{
|
||||
UINT first;
|
||||
UINT counter;
|
||||
};
|
||||
volatile LONGLONG hdr;
|
||||
} CROSS_PROCESS_WORK_HDR;
|
||||
|
||||
typedef struct
|
||||
{
|
||||
CROSS_PROCESS_WORK_HDR free_list;
|
||||
CROSS_PROCESS_WORK_HDR work_list;
|
||||
ULONGLONG unknown[4];
|
||||
CROSS_PROCESS_WORK_ENTRY entries[1];
|
||||
} CROSS_PROCESS_WORK_LIST;
|
||||
|
||||
typedef enum
|
||||
{
|
||||
CrossProcessPreVirtualAlloc = 0,
|
||||
CrossProcessPostVirtualAlloc = 1,
|
||||
CrossProcessPreVirtualFree = 2,
|
||||
CrossProcessPostVirtualFree = 3,
|
||||
CrossProcessPreVirtualProtect = 4,
|
||||
CrossProcessPostVirtualProtect = 5,
|
||||
CrossProcessFlushCache = 6,
|
||||
CrossProcessFlushCacheHeavy = 7,
|
||||
CrossProcessMemoryWrite = 8,
|
||||
} CROSS_PROCESS_NOTIFICATION;
|
||||
|
||||
#define CROSS_PROCESS_LIST_FLUSH 0x80000000
|
||||
#define CROSS_PROCESS_LIST_ENTRY(list,pos) \
|
||||
((CROSS_PROCESS_WORK_ENTRY *)((char *)(list) + ((pos) & ~CROSS_PROCESS_LIST_FLUSH)))
|
||||
|
||||
typedef struct _CURDIR
|
||||
{
|
||||
UNICODE_STRING DosPath;
|
||||
@@ -507,6 +551,19 @@ typedef enum _FILE_INFORMATION_CLASS {
|
||||
FileReplaceCompletionInformation,
|
||||
FileHardLinkFullIdInformation,
|
||||
FileIdExtdBothDirectoryInformation,
|
||||
FileDispositionInformationEx,
|
||||
FileRenameInformationEx,
|
||||
FileRenameInformationExBypassAccessCheck,
|
||||
FileDesiredStorageClassInformation,
|
||||
FileStatInformation,
|
||||
FileMemoryPartitionInformation,
|
||||
FileStatLxInformation,
|
||||
FileCaseSensitiveInformation,
|
||||
FileLinkInformationEx,
|
||||
FileLinkInformationExBypassAccessCheck,
|
||||
FileStorageReserveIdInformation,
|
||||
FileCaseSensitiveInformationForceAccessCheck,
|
||||
FileKnownFolderInformation,
|
||||
FileMaximumInformation
|
||||
} FILE_INFORMATION_CLASS, *PFILE_INFORMATION_CLASS;
|
||||
|
||||
@@ -792,6 +849,21 @@ typedef struct _FILE_REPARSE_POINT_INFORMATION {
|
||||
#define FILE_PIPE_CONNECTED_STATE 0x03
|
||||
#define FILE_PIPE_CLOSING_STATE 0x04
|
||||
|
||||
typedef struct _FILE_OBJECTID_BUFFER
|
||||
{
|
||||
BYTE ObjectId[16];
|
||||
union
|
||||
{
|
||||
struct
|
||||
{
|
||||
BYTE BirthVolumeId[16];
|
||||
BYTE BirthObjectId[16];
|
||||
BYTE DomainId[16];
|
||||
} DUMMYSTRUCTNAME;
|
||||
BYTE ExtendedInfo[48];
|
||||
} DUMMYUNIONNAME;
|
||||
} FILE_OBJECTID_BUFFER, *PFILE_OBJECTID_BUFFER;
|
||||
|
||||
typedef struct _FILE_ALL_INFORMATION {
|
||||
FILE_BASIC_INFORMATION BasicInformation;
|
||||
FILE_STANDARD_INFORMATION StandardInformation;
|
||||
@@ -1003,7 +1075,7 @@ typedef enum _SYSTEM_INFORMATION_CLASS {
|
||||
} SYSTEM_INFORMATION_CLASS, *PSYSTEM_INFORMATION_CLASS;
|
||||
|
||||
typedef enum _THREADINFOCLASS {
|
||||
ThreadBasicInformation,
|
||||
ThreadBasicInformation = 0,
|
||||
ThreadTimes,
|
||||
ThreadPriority,
|
||||
ThreadBasePriority,
|
||||
@@ -1037,7 +1109,32 @@ typedef enum _THREADINFOCLASS {
|
||||
ThreadUmsInformation,
|
||||
ThreadCounterProfiling,
|
||||
ThreadIdealProcessorEx,
|
||||
MaxThreadInfoClass
|
||||
ThreadCpuAccountingInformation,
|
||||
ThreadSuspendCount,
|
||||
ThreadHeterogeneousCpuPolicy,
|
||||
ThreadContainerId,
|
||||
ThreadNameInformation,
|
||||
ThreadSelectedCpuSets,
|
||||
ThreadSystemThreadInformation,
|
||||
ThreadActualGroupAffinity,
|
||||
ThreadDynamicCodePolicyInfo,
|
||||
ThreadExplicitCaseSensitivity,
|
||||
ThreadWorkOnBehalfTicket,
|
||||
ThreadSubsystemInformation,
|
||||
ThreadDbgkWerReportActive,
|
||||
ThreadAttachContainer,
|
||||
ThreadManageWritesToExecutableMemory,
|
||||
ThreadPowerThrottlingState,
|
||||
ThreadWorkloadClass,
|
||||
ThreadCreateStateChange,
|
||||
ThreadApplyStateChange,
|
||||
ThreadStrongerBadHandleChecks,
|
||||
ThreadEffectiveIoPriority,
|
||||
ThreadEffectivePagePriority,
|
||||
MaxThreadInfoClass,
|
||||
#ifdef __WINESRC__
|
||||
ThreadWineNativeThreadName = 1000,
|
||||
#endif
|
||||
} THREADINFOCLASS;
|
||||
|
||||
typedef struct _THREAD_BASIC_INFORMATION
|
||||
@@ -2340,6 +2437,173 @@ typedef struct _SYSTEM_MODULE
|
||||
BYTE Name[MAXIMUM_FILENAME_LENGTH]; /* 1c/28 */
|
||||
} SYSTEM_MODULE, *PSYSTEM_MODULE;
|
||||
|
||||
typedef struct _WOW64_CPURESERVED
|
||||
{
|
||||
USHORT Flags;
|
||||
USHORT Machine;
|
||||
/* CONTEXT context */
|
||||
/* CONTEXT_EX *context_ex */
|
||||
} WOW64_CPURESERVED, *PWOW64_CPURESERVED;
|
||||
|
||||
#define WOW64_CPURESERVED_FLAG_RESET_STATE 1
|
||||
|
||||
typedef struct _WOW64_CPU_AREA_INFO
|
||||
{
|
||||
void *Context;
|
||||
void *ContextEx;
|
||||
void *ContextFlagsLocation;
|
||||
WOW64_CPURESERVED *CpuReserved;
|
||||
ULONG ContextFlag;
|
||||
USHORT Machine;
|
||||
} WOW64_CPU_AREA_INFO, *PWOW64_CPU_AREA_INFO;
|
||||
|
||||
typedef struct _RTL_PROCESS_MODULE_INFORMATION
|
||||
{
|
||||
PVOID Section; /* 00/00 */
|
||||
PVOID MappedBaseAddress; /* 04/08 */
|
||||
PVOID ImageBaseAddress; /* 08/10 */
|
||||
ULONG ImageSize; /* 0c/18 */
|
||||
ULONG Flags; /* 10/1c */
|
||||
WORD LoadOrderIndex; /* 14/20 */
|
||||
WORD InitOrderIndex; /* 16/22 */
|
||||
WORD LoadCount; /* 18/24 */
|
||||
WORD NameOffset; /* 1a/26 */
|
||||
BYTE Name[MAXIMUM_FILENAME_LENGTH]; /* 1c/28 */
|
||||
} RTL_PROCESS_MODULE_INFORMATION, *PRTL_PROCESS_MODULE_INFORMATION;
|
||||
|
||||
typedef struct _RTL_PROCESS_MODULES
|
||||
{
|
||||
ULONG ModulesCount;
|
||||
RTL_PROCESS_MODULE_INFORMATION Modules[1]; /* FIXME: should be Modules[0] */
|
||||
} RTL_PROCESS_MODULES, *PRTL_PROCESS_MODULES;
|
||||
|
||||
#define PROCESS_CREATE_FLAGS_BREAKAWAY 0x00000001
|
||||
#define PROCESS_CREATE_FLAGS_NO_DEBUG_INHERIT 0x00000002
|
||||
#define PROCESS_CREATE_FLAGS_INHERIT_HANDLES 0x00000004
|
||||
#define PROCESS_CREATE_FLAGS_OVERRIDE_ADDRESS_SPACE 0x00000008
|
||||
#define PROCESS_CREATE_FLAGS_LARGE_PAGES 0x00000010
|
||||
#define PROCESS_CREATE_FLAGS_LARGE_PAGE_SYSTEM_DLL 0x00000020
|
||||
#define PROCESS_CREATE_FLAGS_PROTECTED_PROCESS 0x00000040
|
||||
#define PROCESS_CREATE_FLAGS_CREATE_SESSION 0x00000080
|
||||
#define PROCESS_CREATE_FLAGS_INHERIT_FROM_PARENT 0x00000100
|
||||
#define PROCESS_CREATE_FLAGS_SUSPENDED 0x00000200
|
||||
#define PROCESS_CREATE_FLAGS_EXTENDED_UNKNOWN 0x00000400
|
||||
|
||||
typedef struct _RTL_PROCESS_MODULE_INFORMATION_EX
|
||||
{
|
||||
USHORT NextOffset;
|
||||
RTL_PROCESS_MODULE_INFORMATION BaseInfo;
|
||||
ULONG ImageCheckSum;
|
||||
ULONG TimeDateStamp;
|
||||
void *DefaultBase;
|
||||
} RTL_PROCESS_MODULE_INFORMATION_EX;
|
||||
|
||||
#define THREAD_CREATE_FLAGS_CREATE_SUSPENDED 0x00000001
|
||||
#define THREAD_CREATE_FLAGS_SKIP_THREAD_ATTACH 0x00000002
|
||||
#define THREAD_CREATE_FLAGS_HIDE_FROM_DEBUGGER 0x00000004
|
||||
#define THREAD_CREATE_FLAGS_HAS_SECURITY_DESCRIPTOR 0x00000010
|
||||
#define THREAD_CREATE_FLAGS_ACCESS_CHECK_IN_TARGET 0x00000020
|
||||
#define THREAD_CREATE_FLAGS_INITIAL_THREAD 0x00000080
|
||||
|
||||
#ifdef __WINESRC__
|
||||
|
||||
/* Wine-specific exceptions codes */
|
||||
|
||||
#define EXCEPTION_WINE_STUB 0x80000100 /* stub entry point called */
|
||||
#define EXCEPTION_WINE_ASSERTION 0x80000101 /* assertion failed */
|
||||
|
||||
/* Wine extension; Windows doesn't have a name for this code. This is an
|
||||
undocumented exception understood by MS VC debugger, allowing the program
|
||||
to name a particular thread. */
|
||||
#define EXCEPTION_WINE_NAME_THREAD 0x406D1388
|
||||
|
||||
/* used for C++ exceptions in msvcrt
|
||||
* parameters:
|
||||
* [0] CXX_FRAME_MAGIC
|
||||
* [1] pointer to exception object
|
||||
* [2] pointer to type
|
||||
*/
|
||||
#define EXCEPTION_WINE_CXX_EXCEPTION 0xe06d7363
|
||||
#define EXCEPTION_WINE_CXX_FRAME_MAGIC 0x19930520
|
||||
|
||||
#endif
|
||||
|
||||
typedef LONG (CALLBACK *PRTL_EXCEPTION_FILTER)(PEXCEPTION_POINTERS);
|
||||
|
||||
typedef void (CALLBACK *PTP_IO_CALLBACK)(PTP_CALLBACK_INSTANCE,void*,void*,IO_STATUS_BLOCK*,PTP_IO);
|
||||
|
||||
#define PS_ATTRIBUTE_THREAD 0x00010000
|
||||
#define PS_ATTRIBUTE_INPUT 0x00020000
|
||||
#define PS_ATTRIBUTE_ADDITIVE 0x00040000
|
||||
|
||||
typedef enum _PS_ATTRIBUTE_NUM
|
||||
{
|
||||
PsAttributeParentProcess,
|
||||
PsAttributeDebugPort,
|
||||
PsAttributeToken,
|
||||
PsAttributeClientId,
|
||||
PsAttributeTebAddress,
|
||||
PsAttributeImageName,
|
||||
PsAttributeImageInfo,
|
||||
PsAttributeMemoryReserve,
|
||||
PsAttributePriorityClass,
|
||||
PsAttributeErrorMode,
|
||||
PsAttributeStdHandleInfo,
|
||||
PsAttributeHandleList,
|
||||
PsAttributeGroupAffinity,
|
||||
PsAttributePreferredNode,
|
||||
PsAttributeIdealProcessor,
|
||||
PsAttributeUmsThread,
|
||||
PsAttributeMitigationOptions,
|
||||
PsAttributeProtectionLevel,
|
||||
PsAttributeSecureProcess,
|
||||
PsAttributeJobList,
|
||||
PsAttributeChildProcessPolicy,
|
||||
PsAttributeAllApplicationPackagesPolicy,
|
||||
PsAttributeWin32kFilter,
|
||||
PsAttributeSafeOpenPromptOriginClaim,
|
||||
PsAttributeBnoIsolation,
|
||||
PsAttributeDesktopAppPolicy,
|
||||
PsAttributeChpe,
|
||||
PsAttributeMitigationAuditOptions,
|
||||
PsAttributeMachineType,
|
||||
PsAttributeComponentFilter,
|
||||
PsAttributeEnableOptionalXStateFeatures,
|
||||
PsAttributeMax
|
||||
} PS_ATTRIBUTE_NUM;
|
||||
|
||||
#define PS_ATTRIBUTE_PARENT_PROCESS (PsAttributeParentProcess | PS_ATTRIBUTE_INPUT | PS_ATTRIBUTE_ADDITIVE)
|
||||
#define PS_ATTRIBUTE_DEBUG_PORT (PsAttributeDebugPort | PS_ATTRIBUTE_INPUT | PS_ATTRIBUTE_ADDITIVE)
|
||||
#define PS_ATTRIBUTE_TOKEN (PsAttributeToken | PS_ATTRIBUTE_INPUT | PS_ATTRIBUTE_ADDITIVE)
|
||||
#define PS_ATTRIBUTE_CLIENT_ID (PsAttributeClientId | PS_ATTRIBUTE_THREAD)
|
||||
#define PS_ATTRIBUTE_TEB_ADDRESS (PsAttributeTebAddress | PS_ATTRIBUTE_THREAD)
|
||||
#define PS_ATTRIBUTE_IMAGE_NAME (PsAttributeImageName | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_IMAGE_INFO (PsAttributeImageInfo)
|
||||
#define PS_ATTRIBUTE_MEMORY_RESERVE (PsAttributeMemoryReserve | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_PRIORITY_CLASS (PsAttributePriorityClass | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_ERROR_MODE (PsAttributeErrorMode | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_STD_HANDLE_INFO (PsAttributeStdHandleInfo | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_HANDLE_LIST (PsAttributeHandleList | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_GROUP_AFFINITY (PsAttributeGroupAffinity | PS_ATTRIBUTE_THREAD | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_PREFERRED_NODE (PsAttributePreferredNode | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_IDEAL_PROCESSOR (PsAttributeIdealProcessor | PS_ATTRIBUTE_THREAD | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_MITIGATION_OPTIONS (PsAttributeMitigationOptions | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_PROTECTION_LEVEL (PsAttributeProtectionLevel | PS_ATTRIBUTE_INPUT | PS_ATTRIBUTE_ADDITIVE)
|
||||
#define PS_ATTRIBUTE_SECURE_PROCESS (PsAttributeSecureProcess | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_JOB_LIST (PsAttributeJobList | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_CHILD_PROCESS_POLICY (PsAttributeChildProcessPolicy | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_ALL_APPLICATION_PACKAGES_POLICY (PsAttributeAllApplicationPackagesPolicy | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_WIN32K_FILTER (PsAttributeWin32kFilter | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_SAFE_OPEN_PROMPT_ORIGIN_CLAIM (PsAttributeSafeOpenPromptOriginClaim | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_BNO_ISOLATION (PsAttributeBnoIsolation | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_DESKTOP_APP_POLICY (PsAttributeDesktopAppPolicy | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_CHPE (PsAttributeChpe | PS_ATTRIBUTE_INPUT | PS_ATTRIBUTE_ADDITIVE)
|
||||
#define PS_ATTRIBUTE_MITIGATION_AUDIT_OPTIONS (PsAttributeMitigationAuditOptions | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_MACHINE_TYPE (PsAttributeMachineType | PS_ATTRIBUTE_INPUT | PS_ATTRIBUTE_ADDITIVE)
|
||||
#define PS_ATTRIBUTE_COMPONENT_FILTER (PsAttributeComponentFilter | PS_ATTRIBUTE_INPUT)
|
||||
#define PS_ATTRIBUTE_ENABLE_OPTIONAL_XSTATE_FEATURES (PsAttributeEnableOptionalXStateFeatures | PS_ATTRIBUTE_THREAD | PS_ATTRIBUTE_INPUT)
|
||||
|
||||
|
||||
typedef struct _SYSTEM_MODULE_INFORMATION
|
||||
{
|
||||
ULONG ModulesCount;
|
||||
@@ -2952,12 +3216,65 @@ NTSYSAPI NTSTATUS WINAPI RtlpNtCreateKey(PHANDLE,ACCESS_MASK,const OBJECT_ATTRI
|
||||
NTSYSAPI NTSTATUS WINAPI RtlpNtEnumerateSubKey(HANDLE,UNICODE_STRING *, ULONG);
|
||||
NTSYSAPI NTSTATUS WINAPI RtlpWaitForCriticalSection(RTL_CRITICAL_SECTION *);
|
||||
NTSYSAPI NTSTATUS WINAPI RtlpUnWaitCriticalSection(RTL_CRITICAL_SECTION *);
|
||||
NTSYSAPI NTSTATUS WINAPI TpAllocCleanupGroup(TP_CLEANUP_GROUP **);
|
||||
NTSYSAPI NTSTATUS WINAPI TpAllocIoCompletion(TP_IO **,HANDLE,PTP_IO_CALLBACK,void *,TP_CALLBACK_ENVIRON *);
|
||||
NTSYSAPI NTSTATUS WINAPI TpAllocPool(TP_POOL **,PVOID);
|
||||
NTSYSAPI NTSTATUS WINAPI TpAllocTimer(TP_TIMER **,PTP_TIMER_CALLBACK,PVOID,TP_CALLBACK_ENVIRON *);
|
||||
NTSYSAPI NTSTATUS WINAPI TpAllocWait(TP_WAIT **,PTP_WAIT_CALLBACK,PVOID,TP_CALLBACK_ENVIRON *);
|
||||
NTSYSAPI NTSTATUS WINAPI TpAllocWork(TP_WORK **,PTP_WORK_CALLBACK,PVOID,TP_CALLBACK_ENVIRON *);
|
||||
NTSYSAPI void WINAPI TpCallbackLeaveCriticalSectionOnCompletion(TP_CALLBACK_INSTANCE *,RTL_CRITICAL_SECTION *);
|
||||
NTSYSAPI NTSTATUS WINAPI TpCallbackMayRunLong(TP_CALLBACK_INSTANCE *);
|
||||
NTSYSAPI void WINAPI TpCallbackReleaseMutexOnCompletion(TP_CALLBACK_INSTANCE *,HANDLE);
|
||||
NTSYSAPI void WINAPI TpCallbackReleaseSemaphoreOnCompletion(TP_CALLBACK_INSTANCE *,HANDLE,DWORD);
|
||||
NTSYSAPI void WINAPI TpCallbackSetEventOnCompletion(TP_CALLBACK_INSTANCE *,HANDLE);
|
||||
NTSYSAPI void WINAPI TpCallbackUnloadDllOnCompletion(TP_CALLBACK_INSTANCE *,HMODULE);
|
||||
NTSYSAPI void WINAPI TpCancelAsyncIoOperation(TP_IO *);
|
||||
NTSYSAPI void WINAPI TpDisassociateCallback(TP_CALLBACK_INSTANCE *);
|
||||
NTSYSAPI BOOL WINAPI TpIsTimerSet(TP_TIMER *);
|
||||
NTSYSAPI void WINAPI TpPostWork(TP_WORK *);
|
||||
NTSYSAPI NTSTATUS WINAPI TpQueryPoolStackInformation(TP_POOL *, TP_POOL_STACK_INFORMATION *stack_info);
|
||||
NTSYSAPI void WINAPI TpReleaseCleanupGroup(TP_CLEANUP_GROUP *);
|
||||
NTSYSAPI void WINAPI TpReleaseCleanupGroupMembers(TP_CLEANUP_GROUP *,BOOL,PVOID);
|
||||
NTSYSAPI void WINAPI TpReleaseIoCompletion(TP_IO *);
|
||||
NTSYSAPI void WINAPI TpReleasePool(TP_POOL *);
|
||||
NTSYSAPI void WINAPI TpReleaseTimer(TP_TIMER *);
|
||||
NTSYSAPI void WINAPI TpReleaseWait(TP_WAIT *);
|
||||
NTSYSAPI void WINAPI TpReleaseWork(TP_WORK *);
|
||||
NTSYSAPI void WINAPI TpSetPoolMaxThreads(TP_POOL *,DWORD);
|
||||
NTSYSAPI BOOL WINAPI TpSetPoolMinThreads(TP_POOL *,DWORD);
|
||||
NTSYSAPI NTSTATUS WINAPI TpSetPoolStackInformation(TP_POOL *, TP_POOL_STACK_INFORMATION *stack_info);
|
||||
NTSYSAPI void WINAPI TpSetTimer(TP_TIMER *, LARGE_INTEGER *,LONG,LONG);
|
||||
NTSYSAPI void WINAPI TpSetWait(TP_WAIT *,HANDLE,LARGE_INTEGER *);
|
||||
NTSYSAPI NTSTATUS WINAPI TpSimpleTryPost(PTP_SIMPLE_CALLBACK,PVOID,TP_CALLBACK_ENVIRON *);
|
||||
NTSYSAPI void WINAPI TpStartAsyncIoOperation(TP_IO *);
|
||||
NTSYSAPI void WINAPI TpWaitForIoCompletion(TP_IO *,BOOL);
|
||||
NTSYSAPI void WINAPI TpWaitForTimer(TP_TIMER *,BOOL);
|
||||
NTSYSAPI void WINAPI TpWaitForWait(TP_WAIT *,BOOL);
|
||||
NTSYSAPI void WINAPI TpWaitForWork(TP_WORK *,BOOL);
|
||||
NTSYSAPI NTSTATUS WINAPI vDbgPrintEx(ULONG,ULONG,LPCSTR,__ms_va_list);
|
||||
NTSYSAPI NTSTATUS WINAPI vDbgPrintExWithPrefix(LPCSTR,ULONG,ULONG,LPCSTR,__ms_va_list);
|
||||
|
||||
/* 32-bit only functions */
|
||||
|
||||
#ifndef _WIN64
|
||||
#ifdef _WIN64
|
||||
NTSYSAPI void WINAPI RtlOpenCrossProcessEmulatorWorkConnection(HANDLE,HANDLE*,void**);
|
||||
NTSYSAPI NTSTATUS WINAPI RtlWow64GetCpuAreaInfo(WOW64_CPURESERVED*,ULONG,WOW64_CPU_AREA_INFO*);
|
||||
NTSYSAPI NTSTATUS WINAPI RtlWow64GetCurrentCpuArea(USHORT*,void**,void**);
|
||||
NTSYSAPI NTSTATUS WINAPI RtlWow64GetThreadContext(HANDLE,WOW64_CONTEXT*);
|
||||
NTSYSAPI NTSTATUS WINAPI RtlWow64GetThreadSelectorEntry(HANDLE,THREAD_DESCRIPTOR_INFORMATION*,ULONG,ULONG*);
|
||||
NTSYSAPI CROSS_PROCESS_WORK_ENTRY * WINAPI RtlWow64PopAllCrossProcessWorkFromWorkList(CROSS_PROCESS_WORK_HDR*,BOOLEAN*);
|
||||
NTSYSAPI CROSS_PROCESS_WORK_ENTRY * WINAPI RtlWow64PopCrossProcessWorkFromFreeList(CROSS_PROCESS_WORK_HDR*);
|
||||
NTSYSAPI BOOLEAN WINAPI RtlWow64PushCrossProcessWorkOntoFreeList(CROSS_PROCESS_WORK_HDR*,CROSS_PROCESS_WORK_ENTRY*);
|
||||
NTSYSAPI BOOLEAN WINAPI RtlWow64PushCrossProcessWorkOntoWorkList(CROSS_PROCESS_WORK_HDR*,CROSS_PROCESS_WORK_ENTRY*,void**);
|
||||
NTSYSAPI BOOLEAN WINAPI RtlWow64RequestCrossProcessHeavyFlush(CROSS_PROCESS_WORK_HDR*);
|
||||
NTSYSAPI NTSTATUS WINAPI RtlWow64SetThreadContext(HANDLE,const WOW64_CONTEXT*);
|
||||
#else
|
||||
NTSYSAPI NTSTATUS WINAPI NtWow64AllocateVirtualMemory64(HANDLE,ULONG64*,ULONG64,ULONG64*,ULONG,ULONG);
|
||||
NTSYSAPI NTSTATUS WINAPI NtWow64GetNativeSystemInformation(SYSTEM_INFORMATION_CLASS,void*,ULONG,ULONG*);
|
||||
NTSYSAPI NTSTATUS WINAPI NtWow64IsProcessorFeaturePresent(UINT);
|
||||
NTSYSAPI NTSTATUS WINAPI NtWow64QueryInformationProcess64(HANDLE,PROCESSINFOCLASS,void*,ULONG,ULONG*);
|
||||
NTSYSAPI NTSTATUS WINAPI NtWow64ReadVirtualMemory64(HANDLE,ULONG64,void*,ULONG64,ULONG64*);
|
||||
NTSYSAPI NTSTATUS WINAPI NtWow64WriteVirtualMemory64(HANDLE,ULONG64,const void*,ULONG64,ULONG64*);
|
||||
NTSYSAPI LONGLONG WINAPI RtlConvertLongToLargeInteger(LONG);
|
||||
NTSYSAPI ULONGLONG WINAPI RtlConvertUlongToLargeInteger(ULONG);
|
||||
NTSYSAPI LONGLONG WINAPI RtlEnlargedIntegerMultiply(INT,INT);
|
||||
@@ -2966,9 +3283,9 @@ NTSYSAPI UINT WINAPI RtlEnlargedUnsignedDivide(ULONGLONG,UINT,UINT *);
|
||||
NTSYSAPI LONGLONG WINAPI RtlExtendedMagicDivide(LONGLONG,LONGLONG,INT);
|
||||
NTSYSAPI LONGLONG WINAPI RtlExtendedIntegerMultiply(LONGLONG,INT);
|
||||
NTSYSAPI LONGLONG WINAPI RtlExtendedLargeIntegerDivide(LONGLONG,INT,INT *);
|
||||
NTSYSAPI LONGLONG WINAPI RtlInterlockedCompareExchange64(LONGLONG*,LONGLONG,LONGLONG);
|
||||
NTSYSAPI LONGLONG WINAPI RtlLargeIntegerAdd(LONGLONG,LONGLONG);
|
||||
NTSYSAPI LONGLONG WINAPI RtlLargeIntegerArithmeticShift(LONGLONG,INT);
|
||||
NTSYSAPI ULONGLONG WINAPI RtlLargeIntegerDivide( ULONGLONG,ULONGLONG,ULONGLONG *);
|
||||
NTSYSAPI LONGLONG WINAPI RtlLargeIntegerNegate(LONGLONG);
|
||||
NTSYSAPI LONGLONG WINAPI RtlLargeIntegerShiftLeft(LONGLONG,INT);
|
||||
NTSYSAPI LONGLONG WINAPI RtlLargeIntegerShiftRight(LONGLONG,INT);
|
||||
|
@@ -134,6 +134,7 @@ list(APPEND SOURCE_VISTA
|
||||
condvar.c
|
||||
runonce.c
|
||||
srw.c
|
||||
threadpool.c
|
||||
utf8.c)
|
||||
|
||||
add_library(rtl_vista ${SOURCE_VISTA})
|
||||
|
Reference in New Issue
Block a user