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

📄 voice.h

📁 五岳鑫电话卡应用开发
💻 H
字号:
#define  CHILD_WND_FREE_WIDTH    20			//窗口间隙宽
#define  CHILD_WND_FREE_HEIGHT   15			//窗口间隙高
#define  MAXSIZE     255
#define  ChannelWinstyle    WS_CLIPSIBLINGS	| \
							WS_CHILD		| \
							WS_VISIBLE		| \
							WS_CAPTION		| \
							WS_VSCROLL		| \
							WS_THICKFRAME   | \
							LBS_NOTIFY		| \
							LBS_HASSTRINGS	

#define  MessageWinstyle    WS_CLIPSIBLINGS	| \
							WS_CHILD		| \
							WS_VISIBLE		| \
							WS_CAPTION		| \
							WS_VSCROLL		| \
							WS_THICKFRAME   | \
							LBS_NOSEL		| \
							LBS_HASSTRINGS

char MessageTitle[100]="Message";
char ChannelTitle[100]="Voice Channel Status";

BOOL InitApplication(HINSTANCE);
BOOL InitInstance(HINSTANCE,int);

LRESULT APIENTRY MainWndProc(HWND,UINT,WPARAM,LPARAM);
BOOL    APIENTRY modeless_About_Proc(HWND,UINT,WPARAM,LPARAM);
BOOL    APIENTRY SetDBState_Proc(HWND,UINT,WPARAM,LPARAM);

void SetWindowFonts(HWND);
void SetWindowSIZE(HWND,HWND,HWND);
BOOL CenterWindow (HWND);
void Msg_display(LPSTR string);
void Channel_Msg_display(int ch,LPSTR string);

typedef enum {
 	C_FREE =0,			//通道状态:空闲
	C_SERVICE=1,		//服务中...
	C_HANGUP=2			//通道状态:挂机->空闲
}chSTATUS;

typedef struct
{
   int status;			//当前状态
   int working;			//工作模式
}CHANNELINFO;

typedef struct 
{
	int current_state;					//当前状态
	int event;							//事件
	int next_state;						//下一个状态
	int (*funcptr)(int,TV_Event);		//事件处理程序
}TABLE;

TV_Event event;							//
CHANNELINFO chInfo[MAXCHANNEL];			//

int ProcRing(int,TV_Event);				//振铃事件处理程序
int ProcStartService(int,TV_Event);		//启动为服务子进程的程序
int ProcHangUp(int,TV_Event);			//挂机事件处理程序

#define TABLE_SIZE   3
TABLE table[TABLE_SIZE]=
      {/*current_state    event          next_stat    function */
	  { C_FREE,			TEvent_Ring,		C_SERVICE,		ProcRing},//振铃信号
	  { C_SERVICE,	    TEvent_Ring,		C_HANGUP,		ProcStartService},	   
	  { C_HANGUP,		TEvent_HangUp,		C_FREE,		ProcHangUp}//挂机忙音信号
      };

HANDLE workHandle[MAXCHANNEL];			//
DWORD  workID[MAXCHANNEL];				//
int	   workPara[MAXCHANNEL];			//
BOOL   _ProcessServiceID[MAXCHANNEL];	//


void InitSys();							//初始化语音卡,为每一个通道分别开启一个线程
void ExitSys();							//结束语音卡,中止每个人线程
int  ChannelInit(int chNum);			//初始化每个通道状态信息
DWORD WINAPI WorkThread(int *ch);		//通道工作线程
int CheckEvent(int ch,TV_Event event);	//检查通道事件

PROCESS_INFORMATION prinfo[MAXCHANNEL];
STARTUPINFO startin[MAXCHANNEL];

void InitDBSet();						//初始化数据库链接信息
void Refrush_Service(void);				//服务信息器刷新处理模块			

⌨️ 快捷键说明

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