⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gwmesrv.c

📁 深圳市微逻辑电子有限公司 巨果&#8226 Kingmos&reg 系统核心
💻 C
📖 第 1 页 / 共 3 页
字号:
    ARG1_MAKE( DWORD ),//GetClientDC,
    ARG2_MAKE( DWORD, DWORD ),//ReleaseDC,
    ARG1_MAKE( DWORD ),//GetWindowDC,
    ARG4_MAKE( DWORD, DWORD, PTR, DWORD ),//DrawCaption,
    ARG8_MAKE( DWORD, DWORD, DWORD, PTR, PTR, DWORD, PTR, DWORD ),//Scroll,
    ARG3_MAKE( DWORD, DWORD, DWORD ),//GetDCEx,
    ARG3_MAKE( DWORD, PTR, DWORD ),//InvalidateRect,
    ARG3_MAKE( DWORD, DWORD, DWORD ),//InvalidateRgn,
    ARG2_MAKE( DWORD, PTR ),//ValidateRect,
    ARG2_MAKE( DWORD, DWORD ),//ValidateRgn,
    ARG2_MAKE( DWORD, PTR ),//GetThreadProcessId,
    ARG3_MAKE( DWORD, DWORD, DWORD ),//EnableScrollBar,
    ARG3_MAKE( DWORD, DWORD, PTR ),//GetScrollInfo,
    ARG4_MAKE( DWORD, DWORD, PTR, DWORD ),//SetScrollInfo,
	ARG3_MAKE( DWORD, PTR, DWORD ),//GetClassName,
    ARG1_MAKE( DWORD ),//Clear,
	// class
    ARG1_MAKE( PTR ),//Register,
    ARG3_MAKE( DWORD, PTR, PTR ),//GetInfo,
    ARG2_MAKE( PTR, DWORD ),//Unregister,
    ARG2_MAKE( DWORD, DWORD ),//GetLong,
    ARG3_MAKE( DWORD, DWORD, DWORD ),//GetLong,
	ARG1_MAKE( DWORD ),//Clear,
	// dialog
	ARG4_MAKE( DWORD, PTR, DWORD, DWORD ),//CreateIndirect,
	ARG5_MAKE( DWORD, PTR, DWORD, DWORD, DWORD ),//CreateIndirectParam,
	ARG4_MAKE( DWORD, PTR, DWORD, DWORD ),//BoxIndirect,
	ARG5_MAKE( DWORD, PTR, DWORD, DWORD, DWORD ),//BoxIndirectParam,
	ARG2_MAKE( DWORD, DWORD ),//End,
	ARG1_MAKE( DWORD ),//GetCtrlID,
	ARG2_MAKE( DWORD, DWORD ),//GetItem,
	ARG4_MAKE( DWORD, DWORD, PTR, DWORD ),//GetDlgItemText,
	ARG3_MAKE( DWORD, DWORD, PTR ),//SetDlgItemText,

	ARG4_MAKE( DWORD, DWORD, PTR, DWORD ),//GetDlgItemInt,
	ARG4_MAKE( DWORD, DWORD, DWORD, DWORD ),//SetDlgItemInt,

	ARG5_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD ),//SendItemMessage,
	ARG4_MAKE( DWORD, PTR, PTR, DWORD ),//MessageBox,
//ex
	ARG4_MAKE( DWORD, PTR, DWORD, DWORD ),//CreateIndirectEx,
	ARG5_MAKE( DWORD, PTR, DWORD, DWORD, DWORD ),//CreateIndirectParamEx,
	ARG4_MAKE( DWORD, PTR, DWORD, DWORD ),//BoxIndirectEx,
	ARG5_MAKE( DWORD, PTR, DWORD, DWORD, DWORD ),//BoxIndirectParamEx
//ex-end
    ARG1_MAKE( DWORD )           // ShowDesktop
};

//定义系统API(窗口对象消息处理)函数界面
static const PFNVOID lpMsgAPI[] = {
	NULL,
//#define MSG_POST                  78
    (PFNVOID)WinMsg_Post,
//#define MSG_POSTTHREAD            79  
    (PFNVOID)WinMsg_PostThread,
//#define MSG_GET                   80
    (PFNVOID)WinMsg_Get,
//#define MSG_PEEK                  81
    (PFNVOID)WinMsg_Peek,
//#define MSG_POSTQUIT              82
    (PFNVOID)WinMsg_PostQuit,
//#define MSG_DISPATCH              83
    (PFNVOID)WinMsg_Dispatch,
//#define MSG_TRANSLATE             84
    (PFNVOID)NULL,//WinMsg_Translate,
//#define MSG_SEND                  85
    (PFNVOID)WinMsg_Send,
//#define MSG_WAIT                  86
    (PFNVOID)WinMsg_Wait,
//#define MQ_FREETHREADQUEUE
//	(PFNVOID)MQ_FreeThreadQueue
    (PFNVOID)WinEvent_MouseEvent,
	(PFNVOID)WinEvent_KeybdEvent,
	(PFNVOID)WinMsg_WaitForMultipleObjects,
	(PFNVOID)WinMsg_Beep,
	(PFNVOID)WinMsg_GetKeyState,
	(PFNVOID)WinMsg_SendTimeout
};

//定义系统API(窗口对象消息处理)参数界面
static const DWORD dwMsgArgs[] = {
	NULL,
    ARG4_MAKE( DWORD, DWORD, DWORD, DWORD ),//WinMsg_Post,
    ARG4_MAKE( DWORD, DWORD, DWORD, DWORD ),//PostThread,
    ARG4_MAKE( PTR, DWORD, DWORD, DWORD ),//Get,
    ARG5_MAKE( PTR, DWORD, DWORD, DWORD, DWORD ),//Peek,
    ARG1_MAKE( DWORD ),//PostQuit,
    ARG1_MAKE( PTR ),//Dispatch,
    ARG1_MAKE( PTR ),//Translate,
    ARG4_MAKE( DWORD, DWORD, DWORD, DWORD ),//Send,
    ARG0_MAKE(),//Wait,
    ARG5_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD ),//MouseEvent,
	ARG5_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD ),//KeybdEvent
	ARG5_MAKE( DWORD, PTR, DWORD, DWORD, DWORD ), //WinMsg_WaitForMultipleObjects
	ARG1_MAKE( DWORD ), //WinMsg_Beep
	ARG1_MAKE( DWORD ), // WinMsg_GetKeyState
	ARG7_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, PTR )
};

static const SERVER_CTRL_INFO sci = { sizeof( SERVER_CTRL_INFO ),
                                      0,
									  GwmeServerHandler };

//定义系统API(GWME 系统管理/对象)函数界面
static const PFNVOID lpGwmeAPI[] = {
	(PFNVOID)&sci,//GwmeServerHandler,//NULL,
    (PFNVOID)WinSys_CloseObject,
//#define SYS_GETMETRICS            87
    (PFNVOID)WinSys_GetMetrics,
//#define SYS_SETMETRICS            
    (PFNVOID)WinSys_SetMetrics,

//#define SYS_GETCOLOR              88
    (PFNVOID)WinSys_GetColor,
//#define SYS_SETCOLORS             89
    (PFNVOID)WinSys_SetColors,
//#define SYS_GETCOLORBRUSH         90
    (PFNVOID)WinSys_GetColorBrush,
	(PFNVOID)NULL,//WinSys_TouchCalibrate,
//#define CARET_CREATE              91
    (PFNVOID)WinCaret_Create,          
//#define CARET_DESTROY             92
    (PFNVOID)WinCaret_Destroy,
//#define CARET_GETBLINKTIME        93
    (PFNVOID)WinCaret_GetBlinkTime,
//#define CARET_GETPOS              94
    (PFNVOID)WinCaret_GetPos,
//#define CARET_HIDE                95
    (PFNVOID)WinCaret_Hide,
//#define CARET_SETBLINKTIME        96
    (PFNVOID)WinCaret_SetBlinkTime,
//#define CARET_SETPOS              97
    (PFNVOID)WinCaret_SetPos,
//#define CARET_SHOW                98
    (PFNVOID)WinCaret_Show,
//////////menu
	(PFNVOID)NULL,//WinMenu_Create,
	(PFNVOID)NULL,//WinMenu_CreatePopup,
	(PFNVOID)NULL,//WinMenu_Destroy,
	(PFNVOID)NULL,//WinMenu_Remove,
	(PFNVOID)NULL,//WinMenu_Delete,
	(PFNVOID)NULL,//WinMenu_Insert,
	(PFNVOID)NULL,//WinMenu_InsertItem,
	(PFNVOID)NULL,//WinMenu_EnableItem,
	(PFNVOID)NULL,//WinMenu_GetDefaultItem,
	(PFNVOID)NULL,//WinMenu_SetDefaultItem,
	(PFNVOID)NULL,//WinMenu_SetItemInfo,
	(PFNVOID)NULL,//WinMenu_GetItemCount,
	(PFNVOID)NULL,//WinMenu_GetItemID,
	(PFNVOID)NULL,//WinMenu_GetItemInfo,
	(PFNVOID)NULL,//WinMenu_GetSub,
	(PFNVOID)NULL,//WinMenu_TrackPopup,
// code page
//  这两个函数以放到 apisrv里,因为是device等进程也会用道
    NULL,//(PFNVOID)WinCP_MultiByteToWideChar,
	NULL,//(PFNVOID)WinCP_WideCharToMultiByte
	(PFNVOID)WinSys_SetCalibrateWindow,
	(PFNVOID)WinSys_SetCalibratePoints
};

//定义系统API(GWME 系统管理/对象)参数界面
static const DWORD dwGwmeArgs[] = {
	NULL,
    ARG1_MAKE( DWORD ),//CloseObject,
    ARG1_MAKE( DWORD ),//GetMetrics,
	ARG2_MAKE( DWORD, DWORD ), //SetMetrics
    ARG1_MAKE( DWORD ),//GetColor,
    ARG3_MAKE( DWORD, PTR, PTR ),//SetColors,
    ARG1_MAKE( DWORD ),//GetColorBrush,
	ARG0_MAKE(),  //TouchCalibrate
	// caret
    ARG4_MAKE( DWORD, DWORD, DWORD, DWORD ),//WinCaret_Create,          
    ARG0_MAKE(),//WinCaret_Destroy,
    ARG0_MAKE(),//WinCaret_GetBlinkTime,
    ARG1_MAKE( PTR ),//WinCaret_GetPos,
    ARG1_MAKE( DWORD ),//WinCaret_Hide,
    ARG1_MAKE( DWORD ),//WinCaret_SetBlinkTime,
    ARG2_MAKE( DWORD, DWORD ),//WinCaret_SetPos,
    ARG1_MAKE( DWORD ),//WinCaret_Show,
//////////menu
	ARG0_MAKE(),//WinMenu_Create,
	ARG0_MAKE(),//WinMenu_CreatePopup,
	ARG1_MAKE( DWORD ),//WinMenu_Destroy,
	ARG3_MAKE( DWORD, DWORD, DWORD ),//WinMenu_Remove,
	ARG3_MAKE( DWORD, DWORD, DWORD ),//WinMenu_Delete,
	ARG5_MAKE( DWORD, DWORD, DWORD, DWORD, PTR ),//WinMenu_Insert,
	ARG4_MAKE( DWORD, DWORD, DWORD, PTR ),//WinMenu_InsertItem,
	ARG3_MAKE( DWORD, DWORD, DWORD ),//WinMenu_EnableItem,
	ARG3_MAKE( DWORD, DWORD, DWORD ),//WinMenu_GetDefaultItem,
	ARG3_MAKE( DWORD, DWORD, DWORD ),//WinMenu_SetDefaultItem,
	ARG4_MAKE( DWORD, DWORD, DWORD, PTR ),//WinMenu_SetItemInfo,
	ARG1_MAKE( DWORD ),//WinMenu_GetItemCount,
	ARG2_MAKE( DWORD, DWORD ),//WinMenu_GetItemID,
	ARG4_MAKE( DWORD, DWORD, DWORD, PTR ),//WinMenu_GetItemInfo,
	ARG2_MAKE( DWORD, DWORD ),//WinMenu_GetSub,
	ARG7_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, PTR ),//WinMenu_TrackPopup
	// code page
    0, //ARG6_MAKE( DWORD, DWORD, PTR, DWORD, PTR, DWORD ),//MultiByteToWideChar,
	0, //ARG8_MAKE( DWORD, DWORD, PTR, DWORD, PTR, DWORD, PTR, PTR ),//WideCharToMultiByte
	ARG1_MAKE(DWORD),
	ARG5_MAKE( DWORD, PTR, PTR, PTR, PTR )
};

//定义系统API(图形设备)函数界面
static const PFNVOID lpGdiAPI[] = {
    NULL,
///////////////////////////////////////
//#define GDI_BITBLT                
    (PFNVOID)WinGdi_BitBlt,           
//#define GDI_PATBLT                
    (PFNVOID)WinGdi_PatBlt,
//#define GDI_MASKBLT        
    (PFNVOID)WinGdi_MaskBlt,
//#define GDI_DRAWEDGE         
    (PFNVOID)WinGdi_DrawEdge,
//#define GDI_DRAWICON         
    (PFNVOID)WinGdi_DrawIcon,
//#define GDI_DRAWICONEX       
    (PFNVOID)WinGdi_DrawIconEx,
//#define GDI_DRAWTEXT             
    (PFNVOID)WinGdi_DrawText,
//#define GDI_DRAWFOCUSRECT     
    (PFNVOID)WinGdi_DrawFocusRect,
//#define GDI_DPTOLP             
    (PFNVOID)WinGdi_DPtoLP,
//#define GDI_ELLIPSE
	(PFNVOID)WinGdi_Ellipse,
//#define GDI_EXTTEXTOUT          
    (PFNVOID)WinGdi_ExtTextOut,
//#define GDI_EXCLUDECLIPRECT     
    (PFNVOID)WinGdi_ExcludeClipRect,
//#define GDI_FILLRECT            110
    (PFNVOID)WinGdi_FillRect,
//#define GDI_FILLRGN            
    (PFNVOID)WinGdi_FillRgn,
//#define GDI_INTERSECTCLIPRECT        
    (PFNVOID)WinGdi_IntersectClipRect,
//#define GDI_GETBKCOLOR               
    (PFNVOID)WinGdi_GetBkColor,
//#define GDI_GETBKMODE                
    (PFNVOID)WinGdi_GetBkMode,
//#define GDI_GETCURRENTPOSITION       
    (PFNVOID)WinGdi_GetCurrentPosition,
//#define GDI_GETCLIPBOX               
    (PFNVOID)WinGdi_GetClipBox,
//#define GDI_GETCLIPRGN               
    (PFNVOID)WinGdi_GetClipRgn,
//#define GDI_GETCURRENTOBJECT         
    (PFNVOID)WinGdi_GetCurrentObject,
//#define GDI_GETDIBITS               
    (PFNVOID)WinGdi_GetDIBits,
//#define GDI_CREATEICONINDIRECT      120  
    (PFNVOID)WinGdi_CreateIconIndirect,
//#define GDI_DESTROYICON                  
    (PFNVOID)WinGdi_DestroyIcon,
//#define GDI_DESTROYCURSOR              
    (PFNVOID)WinGdi_DestroyCursor,
//#define GDI_GETICONINFO                
    (PFNVOID)WinGdi_GetIconInfo,
//#define GDI_GETOBJECTTYPE              
    (PFNVOID)WinGdi_GetObjectType,
//#define GDI_GETOBJECTINFO              
    (PFNVOID)WinGdi_GetObjectInfo,
//#define GDI_GETPIXEL                   
    (PFNVOID)WinGdi_GetPixel,
//#define GDI_GETROP2                    
    (PFNVOID)WinGdi_GetROP2,
//#define GDI_GETTEXTCOLOR               
    (PFNVOID)WinGdi_GetTextColor,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -