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

📄 modeocom.h

📁 modem串口接口,通过它可与方便与modem通信。
💻 H
字号:
// ModeoCom.h: interface for the ModeoCom class.
//
//////////////////////////////////////////////////////////////////////

#if !defined(AFX_MODEOCOM_H__0CEC782F_6E6F_11DA_9930_00E04CF968BC__INCLUDED_)
#define AFX_MODEOCOM_H__0CEC782F_6E6F_11DA_9930_00E04CF968BC__INCLUDED_

#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000


#define COM_ERROR 0
#define RX_DATA   1
#define TX_DATA   2
#define RING_COM  51002

class ModeoCom  
{
	HANDLE  hCom;//通信口
	HANDLE  RThread;//接收处理线程
	OVERLAPPED m_OverlappedWrite;//发送异步结构
	OVERLAPPED m_OverlappedRead;//接收异步结构
	OVERLAPPED m_OverlappedWaite;//事件异步结构

	DWORD m_Tall_time;//拨号时间
	DWORD m_Code;
	DWORD m_Blck_time;//送包时间
	DWORD m_End_Code;
	DWORD m_End_CodeEx;
	DWORD m_Ring_time;

	//简单传送包协议数据结构
	WORD m_Input;
	HANDLE  R_Waite_Event;//用于上层查询低层数据到达
	HANDLE  R_Message_Event;//等待上层把收到的数据读走
	HANDLE  Read_Event;//等待数据到达
	int     str_ln[32];

	WORD m_out;
	HANDLE  S_Event;
	

	char  VCID_time[16];
	char  VCID_data[16];
	char  VCID_ph[32];
	
	HANDLE hMutex;
	HANDLE wMutex;
	CFile m_fp;
	DWORD  OPEN;
	DWORD  m_Link;//当前在线吗?
	BOOL   m_BEAK_ph;
	
	DWORD R_time;
	BOOL m_FILE_OPEN;//文件是否打开了
	CFile m_FILE_fp; //文件数

public:
	void GetPh(DWORD ID);
	int SendExMessage(void *lpData,WORD ln);
	void SendMouse(DWORD key, CPoint point);
	void SendKey(BYTE TR, UINT nChar, UINT nRepCnt, UINT nFlags);

	char* GetTallName(void);
	BOOL GetVCIDph(void);
	DWORD GetTai(void);
	void UnLock(void);
	void Link(void);
	void DownPh(void);
	
	void AddTall(char *ip);
	void ClsLastTimeData(void);
	long GetLength(void);
	BOOL SendCommand(char *comx);
	BOOL TallPh(char *tall);

	BOOL TestLink(void);
	long Send(void *lpData,WORD ln);
	long Read(void *lpData,WORD ln);
	BOOL TestDataRx(DWORD wait=0xFFFFFFFF);

	//初始化
	BOOL OpenCom(char *con_name,DWORD speek);//打开通信口,并拨号
	long TxData(void *lpData,DWORD ln);//发送数据
	long RxData(void *lpData,DWORD ln);//读出数据
	void Run(void);//接收线程处理接口
	DWORD GetCRC32(BYTE *databuf,DWORD len);

	ModeoCom();
	virtual ~ModeoCom();
	void Close();

	char Err_code[128];//当前错误描述
	DWORD m_Rx;//当前接收字节数
	DWORD m_Tx;//当前发送总字节数
	DWORD m_RxSeek;//接收速度
	DWORD m_TxSeek;//发送速度 
	DWORD sou_speek_ln;
	char  command_str[128];
	char  command_ok[128];
	BOOL  m_NEW;
	HWND  m_hWnd;
	BOOL  m_LINK_OK;
	DWORD  DATA_MAC;

		BYTE *R_buf;//接收缓冲区

protected:
	BOOL RxFile(int k, BYTE *m_sou);
	BOOL WaiteEx(DWORD tx);
	void SaveData(char *ip);
	void Lock(void);
	void ReadEx(void);
	void PhAutoMac(void);


	BOOL FindThDataMac(void);
	void Cls(void);
	void WaiteRead(void);
	BOOL Waite(DWORD tx);
	void Full(int lx);
	void ReadPro(void);
	DWORD FenTallChar(BOOL TX=TRUE);
	DWORD ReadRun(DWORD waitetime);
	DWORD GetRvcLength(void);
	char command[64];
	int  command_ln;

	BOOL AUTO_MAC;  //是否自动应答
	int  RING_TIME; //多少铃声应答
	int  RING_COUNT;//铃声计数

	int  num;//有多少个电话
	char MAC_th[32][32];

	BYTE S_buf_ex[32];//应答发送缓冲区
	BYTE *S_buf;//发送缓冲区

	BYTE *m_buf;//接收备份缓冲区
	long R_ln; //接收长度
	long m_ln;
	
};

#endif // !defined(AFX_MODEOCOM_H__0CEC782F_6E6F_11DA_9930_00E04CF968BC__INCLUDED_)

⌨️ 快捷键说明

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