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

📄 dci.h

📁 超级解霸源代码。纯c语言写的。适合有一定编程基础的开发人员用来学习提高
💻 H
字号:
typedef	int	DCIRVAL;
typedef	struct	DCICMDtag
	{
	DWORD	dwCommand;	//DCI Command
	DWORD	lParam1;	//generic dword sized parameter
	DWORD	lParam2;	//generic dword sized parameter
	DWORD	dwVersion;	//DCI version
	DWORD	dwReserved;	//reserved for system use.
	}DCICMD;
typedef	struct	DCICREATEINPUTtag
	{
	DCICMD	dcicmd;		//DCI Command header
	DWORD	dwCompression;	//format of surface to be created.
	DWORD	dwMask[3];	//for nonstandard RGB surface
	DWORD	dwHeight;	//height of surface to be created.
	DWORD	dwWidth;	//width of input dsurface
	DWORD	dwDCICaps;	//capabilitics of surface wanted
	DWORD	dwBitCount;	//bit depth of the surface
	LPVOID	lpSurface;	//pointer to an associated surface
	}DCICREATEINPUT,FAR * LPDCICREATEINPUT;
typedef	struct	DCIENUMINPUTtag
	{
	DCICMD		dcicmd;		//DCI Command header
	RECT		rSrc;		//source rectangle
	RECT		rDest;		//destination rectangle
	CALLBACK	*EnumCallback;	//Provider calls to return support
	LPVOID		lpContext;	//Provider must pass back to client
	}DCIENUMINPUT,FAR * LPDCIENUMINPUT;
typedef	struct	RECTLTeg
	{
	long	left;
	long	top;
	long	right;
	long	bottom;
	}RECTL;
typedef	struct	RGNDATAHEADERtag
	{
	DWORD		dwSize;		//size of structure
	DWORD		iType;		//type of region,Will be RDH_RECTANGLES
	DWORD		nCount;		//number of rectangles
	DWORD		nRgnSize;	//size of buffer -- can be zero
	RECTL		rcBound;	//bounding rectangle for region
	}RGNDATAHEADER;
typedef	struct	RGNDATAtag
	{
	RGNDATAHEADER	rdh;		//region data header
	char		buffer[1];	//array of retangles
	}RGNDATA,FAR *LPRGNDATA;
typedef	struct	DCISURFACEINFOtag
	{
	DWORD	dwSize;		//Size of surface
	DWORD	dwDCICaps;	//capability flags
	DWORD	dwCompression;	//format of surface to be created
	DWORD	dwMask[3];	//for nonstandard RGB surface
	DWORD	dwWidth;	//Width of surface
	DWORD	dwHeight;	//Height of surface
	LONG	lStride;	//stride of surface
	DWORD	dwBitCount;	//Bit depth of format
	DWORD	dwOffSurface;	//surface offset
	DWORD	dwSelSurface;	//surface selector and alignment
	DWORD	dwReserved1;	//reserved for provider
	DWORD	dwReserved2;	//reserved for DCIMAN
	DWORD	dwReserved3;	//reserved for future
	DCIRVAL	(CALLBACK *BeginAccess)(LPVOID,LPRECT);	//BeginAccess Fn
	DCIRVAL	(CALLBACK *EndAccess)(LPVOID);		//EndAccess Fn
	void	(CALLBACK *DestroySurface)(LPVOID);	//DestroySurface Fn
	}DCISURFACEINFO,FAR * LPDCISURFACEINFO;
typedef	struct	DCIOFFSCREENtag
	{
	DCISURFACEINFO	dciInfo;		//surface info
	void/*DCIRVAL*/	(CALLBACK *Draw)(LPDCISURFACEINFO);	//Execute Draw Fn
	DCIRVAL	(CALLBACK *SetCliplist)(LPVOID,LPRGNDATA);//SetCliplist Fn
	DCIRVAL	(CALLBACK *SetDestination)(LPVOID,LPRECT,LPRECT);//SetDestination Fn
	DWORD	Data[25];	//Not know.
	}DCIOFFSCREEN,FAR *LPDCIOFFSCREEN;
typedef	struct	DCIOVERLAYtag
	{
	DCISURFACEINFO	dciInfo;		//surface info
	DCIRVAL	(CALLBACK *SetCliplist)(LPVOID,LPRGNDATA);//SetCliplist Fn
	DCIRVAL	(CALLBACK *SetDestination)(LPVOID,LPRECT,LPRECT);//SetDestination Fn
	DWORD		dwChromakeyValue;	//Chromakey color value
	DWORD		dwChromakeyMask;	//specifies valid bits of value
	}DCIOVERLAY,FAR *LPDCIOVERLAY;
typedef	DCISURFACEINFO	DCIPRIMARY,FAR *LPDCIPRIMARY;

⌨️ 快捷键说明

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