📄 mxr.h
字号:
/*
* The content of this file or document is CONFIDENTIAL and PROPRIETARY
* to Jade Technologies Co., Ltd. It is subjected to the terms of a
* License Agreement between Licensee and Jade Technologies Co., Ltd.
* restricting among other things, the use, reproduction, distribution
* and transfer. Each of the embodiments, including this information
* and any derivative work shall retain this copyright notice.
*
* Copyright (c) 2004 - 2005 Jade Technologies Co., Ltd.
* All rights reserved.
* ----------------------------------------------------------------
* File: mxr.h,v
* Revision: 1.0
* ----------------------------------------------------------------
* $
*/
#include <windows.h>
#define FILE_DEVICE_MXR 32768 // The device id for the MXR driver
#define MXR_IOCTL_FUNCTION_BASE 2048 // The base function code for OEM HAL IOCTL functions
// The MXR IOCTL function list
#define MXR_IOCTL_MEMORY_COPY (MXR_IOCTL_FUNCTION_BASE + 0)
#define MXR_IOCTL_MEMORY_FILL (MXR_IOCTL_FUNCTION_BASE + 1)
#define MXR_IOCTL_WAIT_FOR_COMPLETE (MXR_IOCTL_FUNCTION_BASE + 2)
#define MXR_IOCTL_CHECK_FOR_COMPLETE (MXR_IOCTL_FUNCTION_BASE + 3)
// The MXR IOCTLs
#define IOCTL_MXR_MEMORY_COPY CTL_CODE(FILE_DEVICE_MXR, MXR_IOCTL_MEMORY_COPY, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_MXR_MEMORY_FILL CTL_CODE(FILE_DEVICE_MXR, MXR_IOCTL_MEMORY_FILL, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_MXR_WAIT_FOR_COMPLETE CTL_CODE(FILE_DEVICE_MXR, MXR_IOCTL_WAIT_FOR_COMPLETE, METHOD_BUFFERED, FILE_ANY_ACCESS)
#define IOCTL_MXR_CHECK_FOR_COMPLETE CTL_CODE(FILE_DEVICE_MXR, MXR_IOCTL_CHECK_FOR_COMPLETE, METHOD_BUFFERED, FILE_ANY_ACCESS)
//
// Parameters for MemoryCopy
//
typedef struct tagMemoryCopyParams {
PVOID pvSourceBuffer;
PVOID pvDestBuffer;
DWORD dwSize;
UCHAR ucTransferWidth;
}MEMORY_COPY_PARAMS, *PMEMORY_COPY_PARAMS;
//
// Result data for MemoryCopy
//
typedef struct tagMemoryCopyResult {
UCHAR ucPad; // Keep the compiler happy
}MEMORY_COPY_RESULT, *PMEMORY_COPY_RESULT;
//
// Parameters for MemoryFill
//
typedef struct tagMemoryFillParams {
PVOID pvSourceBuffer;
PVOID pvDestBuffer;
DWORD dwSize;
UCHAR ucTransferWidth;
}MEMORY_FILL_PARAMS, *PMEMORY_FILL_PARAMS;
//
// Result data for MemoryFill
//
typedef struct tagMemoryFillResult {
UCHAR ucPad; // Keep the compiler happy
}MEMORY_FILL_RESULT, *PMEMORY_FILL_RESULT;
//
// Parameters for WaitForComplete
//
typedef struct tagWaitForCompleteParams {
UCHAR ucPad; // Keep the compiler happy
}WAIT_FOR_COMPLETE_PARAMS, *PWAIT_FOR_COMPLETE_PARAMS;
//
// Result data for WaitForComplete
//
typedef struct tagWaitForCompleteResult {
BOOL fError;
}WAIT_FOR_COMPLETE_RESULT, *PWAIT_FOR_COMPLETE_RESULT;
//
// Parameters for CheckForComplete
//
typedef struct tagCheckForCompleteParams {
UCHAR ucPad; // Keep the compiler happy
}CHECK_FOR_COMPLETE_PARAMS, *PCHECK_FOR_COMPLETE_PARAMS;
//
// Result data for CheckForComplete
//
typedef struct tagCheckForCompleteResult {
BOOL fComplete;
BOOL fError;
}CHECK_FOR_COMPLETE_RESULT, *PCHECK_FOR_COMPLETE_RESULT;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -