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

📄 gwmesrv.c

📁 深圳市微逻辑电子有限公司 巨果&#8226 Kingmos&reg 系统核心
💻 C
📖 第 1 页 / 共 3 页
字号:
//#define GDI_GETTEXTALIGN               
    (PFNVOID)WinGdi_GetTextAlign,
//#define GDI_GETTEXTEXTENTPOINT32         
    (PFNVOID)WinGdi_GetTextExtentPoint32,
//#define GDI_GETTEXTEXTENTEXPOINT      130
    (PFNVOID)WinGdi_GetTextExtentExPoint,
//#define GDI_GETVIEWPORTORG             
    (PFNVOID)WinGdi_GetViewportOrg,
//#define GDI_GETWINDOWORG               
    (PFNVOID)WinGdi_GetWindowOrg,
//#define GDI_INVERTRECT                 
    (PFNVOID)WinGdi_InvertRect,
//#define GDI_INVERTRGN                  
    (PFNVOID)WinGdi_InvertRgn,
//#define GDI_LINETO                     
    (PFNVOID)WinGdi_LineTo,
//#define GDI_LINE                       
    (PFNVOID)WinGdi_Line,
//#define GDI_LPTODP                     
    (PFNVOID)WinGdi_LPtoDP,
//#define GDI_MOVETO                     
    (PFNVOID)WinGdi_MoveTo,
//#define GDI_OFFSETCLIPRGN              
    (PFNVOID)WinGdi_OffsetClipRgn,
//#define GDI_OFFSETVIEWPORTORG          140
    (PFNVOID)WinGdi_OffsetViewportOrg,
//#define GDI_OFFSETWINDOWORG            
    (PFNVOID)WinGdi_OffsetWindowOrg,
//#define GDI_POLYLINE                   
    (PFNVOID)WinGdi_Polyline,
//#define GDI_PTVISIBLE                  
    (PFNVOID)WinGdi_PtVisible,
//#define GDI_RECTANGLE                  
    (PFNVOID)WinGdi_Rectangle,
//#define GDI_ROUNDRECT
	(PFNVOID)WinGdi_RoundRect,
//#define GDI_RECTVISIBLE                
    (PFNVOID)WinGdi_RectVisible,
//#define GDI_SELECTOBJECT               
    (PFNVOID)WinGdi_SelectObject,
//#define GDI_DELETEOBJECT               
    (PFNVOID)WinGdi_DeleteObject,
//#define GDI_DELETEDC                   
    (PFNVOID)WinGdi_DeleteDC,
//#define GDI_SELECTCLIPRGN              
    (PFNVOID)WinGdi_SelectClipRgn,
//#define GDI_EXTSELECTCLIPRGN           150
    (PFNVOID)WinGdi_ExtSelectClipRgn,
//#define GDI_SETBKCOLOR                 
    (PFNVOID)WinGdi_SetBkColor,
//#define GDI_SETBKMODE                  
    (PFNVOID)WinGdi_SetBkMode,
//#define GDI_SETBRUSHORG                
    (PFNVOID)WinGdi_SetBrushOrg,
//#define GDI_SETMAPMODE                 
    (PFNVOID)WinGdi_SetMapMode,
//#define GDI_SETPIXEL                   
    (PFNVOID)WinGdi_SetPixel,
//#define GDI_SETROP2                    
    (PFNVOID)WinGdi_SetROP2,
//#define GDI_SETTEXTCOLOR               
    (PFNVOID)WinGdi_SetTextColor,
//#define GDI_SETTEXTALIGN
    (PFNVOID)WinGdi_SetTextAlign,
//#define GDI_SETVIEWPORTORG             
    (PFNVOID)WinGdi_SetViewportOrg,
//#define GDI_SETWINDOWORG               
    (PFNVOID)WinGdi_SetWindowOrg,
//#define GDI_TEXTOUT                    160
    (PFNVOID)WinGdi_TextOut,
//#define GDI_CREATEPENINDIRECT          
    (PFNVOID)WinGdi_CreatePenIndirect,
//#define GDI_CREATEPEN                  
    (PFNVOID)WinGdi_CreatePen,
//#define GDI_CREATEBRUSHINDIRECT       
    (PFNVOID)WinGdi_CreateBrushIndirect,
//#define GDI_CREATEHATCHBRUSH          
    (PFNVOID)WinGdi_CreateHatchBrush,
//#define GDI_CREATESOLIDBRUSH          
    (PFNVOID)WinGdi_CreateSolidBrush,
//#define GDI_CREATEBITMAP              
    (PFNVOID)WinGdi_CreateBitmap,
//#define GDI_CREATECOMPATIBLEBITMAP    
    (PFNVOID)WinGdi_CreateCompatibleBitmap,
//#define GDI_CREATEBITMAPINDIRECT      
    NULL,//(PFNVOID)WinGdi_CreateBitmapIndirect,
//#define GDI_CREATECOMPATIBLEDC        
    (PFNVOID)WinGdi_CreateCompatibleDC,
//#define GDI_CREATEDIBSECTION          170
    (PFNVOID)WinGdi_CreateDIBSection,
//#define GDI_SETDIBITS                 
    (PFNVOID)WinGdi_SetDIBits,
//#define GDI_CREATEDIBITMAP           
    (PFNVOID)WinGdi_CreateDIBitmap,
//#define GDI_GETSTOCKOBJECT            
    (PFNVOID)WinGdi_GetStockObject,
//#define GDI_GETTEXTMETRICS            
    (PFNVOID)WinGdi_GetTextMetrics,
//#define GDI_GETCHARWIDTH              
    (PFNVOID)WinGdi_GetCharWidth,
//#define GDI_LOADIMAGE                 
    (PFNVOID)WinGdi_LoadImage,
//#define GDI_LOADICON                  
    (PFNVOID)WinGdi_LoadIcon,
//#define GDI_LOADCURSOR              168     
    (PFNVOID)WinGdi_LoadCursor,      

//#define RGN_CREATERECT              169
    (PFNVOID)WinRgn_CreateRect,
//#define RGN_CREATERECTINDIRECT      170
    (PFNVOID)WinRgn_CreateRectIndirect,
//#define RGN_COMBINE                 171
    (PFNVOID)WinRgn_Combine,
//#define RGN_EQUAL                   172
    (PFNVOID)WinRgn_Equal,
//#define RGN_OFFSET                  173
    (PFNVOID)WinRgn_Offset,
//#define RGN_GETBOX                  174
    (PFNVOID)WinRgn_GetBox,
//#define RGN_RECTINREGION            175
    (PFNVOID)WinRgn_RectInRegion,
//#define RGN_PTINREGION              176
    (PFNVOID)WinRgn_PtInRegion,
//#define RGN_SETRECT                 177
    (PFNVOID)WinRgn_SetRect,
//
   	(PFNVOID)WinGdi_Arc,
	(PFNVOID)WinGdi_SetDIBitsToDevice,
	(PFNVOID)WinGdi_GetMapMode,
	(PFNVOID)WinGdi_TextOutW,
    (PFNVOID)WinGdi_GetTextExtentPoint32W,
	(PFNVOID)WinFont_CreateIndirect,
	(PFNVOID)WinGdi_TransparentBlt,
	(PFNVOID)WinGdi_StretchBlt
};

//定义系统API(图形设备)参数界面
static const DWORD dwGdiArgs[] = {
    NULL,
///////////////////////////////////////
    ARG9_MAKE( DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD ),//WinGdi_BitBlt,           
    ARG6_MAKE( DWORD,DWORD,DWORD,DWORD,DWORD,DWORD ),//WinGdi_PatBlt,
    ARG12_MAKE( DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD ),//WinGdi_MaskBlt,
    ARG4_MAKE( DWORD, PTR, DWORD, DWORD ),//WinGdi_DrawEdge,
    ARG4_MAKE( DWORD,DWORD,DWORD,DWORD ),//WinGdi_DrawIcon,
    ARG9_MAKE( DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD,DWORD ),//WinGdi_DrawIconEx,
    ARG5_MAKE( DWORD, PTR, DWORD, PTR, DWORD ),//WinGdi_DrawText,
    ARG2_MAKE( DWORD, PTR ),//WinGdi_DrawFocusRect,
    ARG3_MAKE( DWORD, PTR, DWORD ),//WinGdi_DPtoLP,
	ARG5_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD ),
    ARG8_MAKE( DWORD, DWORD, DWORD, DWORD, PTR, PTR, DWORD, PTR ),//WinGdi_ExtTextOut,
    ARG5_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD ),//WinGdi_ExcludeClipRect,
    ARG3_MAKE( DWORD, PTR, DWORD ),//WinGdi_FillRect,
    ARG3_MAKE( DWORD, DWORD, DWORD ),//WinGdi_FillRgn,
    ARG5_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD ),//WinGdi_IntersectClipRect,
    ARG1_MAKE( DWORD ),//WinGdi_GetBkColor,
    ARG1_MAKE( DWORD ),//WinGdi_GetBkMode,
    ARG2_MAKE( DWORD, PTR ),//WinGdi_GetCurrentPosition,
    ARG2_MAKE( DWORD, PTR ),//WinGdi_GetClipBox,
    ARG2_MAKE( DWORD, DWORD  ),//WinGdi_GetClipRgn,
    ARG2_MAKE( DWORD, DWORD ),//WinGdi_GetCurrentObject,
    ARG7_MAKE( DWORD, DWORD, DWORD, DWORD, PTR, PTR, DWORD ),//(PFNVOID)WinGdi_GetDIBits,
    ARG1_MAKE( PTR ),//WinGdi_CreateIconIndirect,
    ARG1_MAKE( DWORD ),//WinGdi_DestroyIcon,
    ARG1_MAKE( DWORD ),//WinGdi_DestroyCursor,
    ARG2_MAKE( DWORD, PTR ),//WinGdi_GetIconInfo,
    ARG1_MAKE( DWORD ),//WinGdi_GetObjectType,
    ARG3_MAKE( DWORD, DWORD, PTR ),//WinGdi_GetObjectInfo,
    ARG3_MAKE( DWORD, DWORD, DWORD ),//WinGdi_GetPixel,
    ARG1_MAKE( DWORD ),//WinGdi_GetROP2,
    ARG1_MAKE( DWORD ),//WinGdi_GetTextColor,
	ARG1_MAKE( DWORD ),//WinGdi_GetTextAlign,
    ARG4_MAKE( DWORD, PTR, DWORD, PTR ),//WinGdi_GetTextExtentPoint32,
    ARG7_MAKE( DWORD, PTR, DWORD, DWORD, PTR, PTR, PTR ),//WinGdi_GetTextExtentExPoint,
    ARG2_MAKE( DWORD, PTR ),//WinGdi_GetViewportOrg,
    ARG2_MAKE( DWORD, PTR ),//WinGdi_GetWindowOrg,
    ARG2_MAKE( DWORD, PTR ),//WinGdi_InvertRect,
    ARG2_MAKE( DWORD, DWORD ),//WinGdi_InvertRgn,
    ARG3_MAKE( DWORD, DWORD, DWORD ),//WinGdi_LineTo,
    ARG5_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD ),//WinGdi_Line,
    ARG3_MAKE( DWORD, PTR, DWORD ),//WinGdi_LPtoDP,
    ARG4_MAKE( DWORD, DWORD, DWORD, PTR ),//WinGdi_MoveTo,
    ARG3_MAKE( DWORD, DWORD, DWORD ),//WinGdi_OffsetClipRgn,
    ARG4_MAKE( DWORD, DWORD, DWORD, PTR ),//WinGdi_OffsetViewportOrg,
    ARG4_MAKE( DWORD, DWORD, DWORD, PTR ),//WinGdi_OffsetWindowOrg,
    ARG3_MAKE( DWORD, PTR, DWORD ),//WinGdi_Polyline,
    ARG3_MAKE( DWORD, DWORD, DWORD ),//WinGdi_PtVisible,
    ARG5_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD ),//WinGdi_Rectangle,
	ARG7_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD ),//WinGdi_RoundRect,
    ARG2_MAKE( DWORD, PTR ),//WinGdi_RectVisible,
    ARG2_MAKE( DWORD, DWORD ),//WinGdi_SelectObject,
    ARG1_MAKE( DWORD ),//WinGdi_DeleteObject,
    ARG1_MAKE( DWORD ),//WinGdi_DeleteDC,
    ARG2_MAKE( DWORD, DWORD ),//WinGdi_SelectClipRgn,
    ARG3_MAKE( DWORD, DWORD, DWORD ),//WinGdi_ExtSelectClipRgn,
    ARG2_MAKE( DWORD, DWORD ),//WinGdi_SetBkColor,
    ARG2_MAKE( DWORD, DWORD ),//WinGdi_SetBkMode,
    ARG4_MAKE( DWORD, DWORD, DWORD, PTR ),//WinGdi_SetBrushOrg,
    ARG2_MAKE( DWORD, DWORD ),//WinGdi_SetMapMode,
    ARG4_MAKE( DWORD, DWORD, DWORD, DWORD ),//WinGdi_SetPixel,
    ARG2_MAKE( DWORD, DWORD ),//WinGdi_SetROP2,
    ARG2_MAKE( DWORD, DWORD ),//WinGdi_SetTextColor,
	ARG2_MAKE( DWORD, DWORD ),//WinGdi_SetTextAlign
    ARG4_MAKE( DWORD, DWORD, DWORD, PTR ),//WinGdi_SetViewportOrg,
    ARG4_MAKE( DWORD, DWORD, DWORD, PTR ),//WinGdi_SetWindowOrg,
    ARG5_MAKE( DWORD, DWORD, DWORD, PTR, DWORD ),//WinGdi_TextOut,
    ARG1_MAKE( PTR ),//WinGdi_CreatePenIndirect,
    ARG3_MAKE( DWORD, DWORD, DWORD ),//WinGdi_CreatePen,
    ARG1_MAKE( PTR ),//WinGdi_CreateBrushIndirect,
    ARG2_MAKE( DWORD, DWORD ),//WinGdi_CreateHatchBrush,
    ARG1_MAKE( DWORD ),//WinGdi_CreateSolidBrush,
    ARG5_MAKE( DWORD, DWORD, DWORD, DWORD, PTR ),//WinGdi_CreateBitmap,
    ARG3_MAKE( DWORD, DWORD, DWORD ),//WinGdi_CreateCompatibleBitmap,
    0,//(PFNVOID)WinGdi_CreateBitmapIndirect,
    ARG1_MAKE( DWORD ),//WinGdi_CreateCompatibleDC,
    ARG6_MAKE( DWORD, PTR, DWORD, PTR, DWORD, DWORD ),//WinGdi_CreateDIBSection,
    ARG7_MAKE( DWORD, DWORD, DWORD, DWORD, PTR, PTR, DWORD ),//WinGdi_SetDIBits,
    ARG6_MAKE( DWORD, PTR, DWORD, PTR, PTR, DWORD ),//WinGdi_CreateDIBitmap,
    ARG1_MAKE( DWORD ),//WinGdi_GetStockObject,
    ARG2_MAKE( DWORD, PTR ),//WinGdi_GetTextMetrics,
    ARG4_MAKE( DWORD, DWORD, DWORD, PTR ),//WinGdi_GetCharWidth,
    ARG6_MAKE( DWORD, PTR, DWORD, DWORD, DWORD, DWORD ),//WinGdi_LoadImage,
    ARG2_MAKE( DWORD, PTR ),//WinGdi_LoadIcon,
    ARG2_MAKE( DWORD, PTR ),//WinGdi_LoadCursor,   
	// region
    ARG4_MAKE( DWORD, DWORD, DWORD, DWORD ),//WinRgn_CreateRect,
    ARG1_MAKE( PTR ),//WinRgn_CreateRectIndirect,
    ARG4_MAKE( DWORD, DWORD, DWORD, DWORD ),//WinRgn_Combine,
    ARG2_MAKE( DWORD, DWORD ),//WinRgn_Equal,
    ARG3_MAKE( DWORD, DWORD, DWORD ),//WinRgn_Offset,
    ARG2_MAKE( DWORD, PTR ),//WinRgn_GetBox,
    ARG2_MAKE( DWORD, PTR ),//WinRgn_RectInRegion,
    ARG3_MAKE( DWORD, DWORD, DWORD ),//WinRgn_PtInRegion,
    ARG5_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD ),//WinRgn_SetRect,
	//
	ARG9_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD ),//WinGdi_Arc
	ARG12_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, PTR, PTR, DWORD ),//WinGdi_SetDIBitsToDevice
	ARG1_MAKE( DWORD ),//WinGdi_GetMapMode
	ARG5_MAKE( DWORD, DWORD, DWORD, PTR, DWORD ),//WinGdi_TextOutW
	ARG4_MAKE( DWORD, PTR, DWORD, PTR ),//WinGdi_GetTextExtentPoint32W,
	ARG1_MAKE( PTR ),    //WinFont_CreateIndirect
	ARG11_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD ),//WinGdi_TransparentBlt
	ARG11_MAKE( DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD, DWORD ),//WinGdi_StretchBlt
};

// **************************************************
// 声明:void InstallGwmeServer( void )
// 参数:
// 	无
// 返回值:
//	无
// 功能描述:
//	初始化 GWME 系统
// 引用: 
//	
// ************************************************

void InstallGwmeServer( void )
{	//注册 GWME 系统 API
	API_RegisterEx( API_GDI,  lpGdiAPI, dwGdiArgs, sizeof( lpGdiAPI ) / sizeof( PFNVOID ) );
    API_RegisterEx( API_WND,  lpWndAPI, dwWndArgs, sizeof( lpWndAPI ) / sizeof( PFNVOID ) );
    API_RegisterEx( API_MSG,  lpMsgAPI, dwMsgArgs, sizeof( lpMsgAPI ) / sizeof( PFNVOID ) );
    API_RegisterEx( API_GWE,  lpGwmeAPI, dwGwmeArgs, sizeof( lpGwmeAPI ) / sizeof( PFNVOID ) );
}


⌨️ 快捷键说明

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