Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

93 lines
1.9 KiB

/*++
Copyright (c) 1998-2000 Microsoft Corporation
Module Name:
bintrans.h
Abstract:
Header for calling bintrans.dll if it exists
Author:
22-Aug-2000 v-cspira (charles spirakis)
--*/
#ifndef _BINTRANS_INCLUDE
#define _BINTRANS_INCLUDE
#ifdef __cplusplus
extern "C" {
#endif
#if !defined(_WOW64BTAPI_)
#define WOW64BTAPI DECLSPEC_IMPORT
#else
#define WOW64BTAPI
#endif
//
// Cache manipulation functions and Dll notification
//
WOW64BTAPI VOID BTCpuFlushInstructionCache ( PVOID BaseAddress, ULONG Length );
WOW64BTAPI VOID BTCpuNotifyDllLoad ( LPWSTR DllName, PVOID DllBase, ULONG DllSize );
WOW64BTAPI VOID BTCpuNotifyDllUnload ( PVOID DllBase );
//
// Init and term APIs
//
WOW64BTAPI NTSTATUS BTCpuProcessInit(PWSTR pImageName, PSIZE_T pCpuThreadDataSize);
WOW64BTAPI NTSTATUS BTCpuProcessTerm(HANDLE ProcessHandle);
WOW64BTAPI NTSTATUS BTCpuThreadInit(PVOID pPerThreadData);
WOW64BTAPI NTSTATUS BTCpuThreadTerm(VOID);
//
// Execution
//
WOW64BTAPI VOID BTCpuSimulate(VOID);
//
// Exception handling, context manipulation
//
WOW64BTAPI VOID BTCpuResetToConsistentState(PEXCEPTION_POINTERS pExecptionPointers);
WOW64BTAPI VOID BTCpuResetFloatingPoint(VOID);
WOW64BTAPI ULONG BTCpuGetStackPointer(VOID);
WOW64BTAPI VOID BTCpuSetStackPointer(ULONG Value);
WOW64BTAPI VOID BTCpuSetInstructionPointer(ULONG Value);
WOW64BTAPI
NTSTATUS
BTCpuSuspendThread(
IN HANDLE ThreadHandle,
IN HANDLE ProcessHandle,
IN PTEB Teb,
OUT PULONG PreviousSuspendCount OPTIONAL);
WOW64BTAPI
NTSTATUS
BTCpuGetContext(
IN HANDLE ThreadHandle,
IN HANDLE ProcessHandle,
IN PTEB Teb,
OUT PCONTEXT32 Context);
WOW64BTAPI
NTSTATUS
BTCpuSetContext(
IN HANDLE ThreadHandle,
IN HANDLE ProcessHandle,
IN PTEB Teb,
PCONTEXT32 Context);
#ifdef __cplusplus
}
#endif
#endif //_BINTRANS_INCLUDE