📄 voice.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 + -