* Copyright by Chun-Hsueh Lin,03/12/2003
************************************************************************/
#ifndef DRIVER
#define DRIVER"WINRING"
#endif
#ifndef DEVIO_H
#define DEVIO_H
//===============================================
#ifndef CTL_CODE
#define CTL_CODE( DeviceType, Function, Method, Access ) (/
((DeviceType) << 16) | ((Access) << 14) | ((Function) << 2) | (Method) /
)
#define METHOD_BUFFERED0
#define METHOD_IN_DIRECT1
#define METHOD_OUT_DIRECT2
#define METHOD_NEITHER3
#define FILE_ANY_ACCESS0
#define FILE_READ_ACCESS( 0x0001 )// file & pipe
#define FILE_WRITE_ACCESS( 0x0002 )// file & pipe
#define FILE_DEVICE_UNKNOWN0x00000022
#endif
#define WINRING_AccessCTL_CODE(/
FILE_DEVICE_UNKNOWN,/
0x999,/
METHOD_BUFFERED,/
FILE_ANY_ACCESS)
#endif
//===============================================
class TRingData
{
public:
ULONG AdjRing0Entry;
ULONG RegData[7];
};
//===============================================
HANDLE DriverHandle;
TRingData Ring;
DWORD retbyte;