📄 comm.h
字号:
#ifndef _comm_h
#define _comm_h
#define WM_RECVCHAR WM_USER + 1000
UINT ReadThread(LPVOID pParam);
UINT TimeOutThread(LPVOID pParam);
typedef struct HANDLEINFO
{
LPVOID HwndInfo;
HWND CommHwnd;
HANDLE CommInfo;
DWORD TimeOut;
BOOL ThreadRun;
}HANDLEInfo;
class CCommDevice
{
protected:
char ComPort[20];
HANDLE hCom;
COMMTIMEOUTS CommTimeOuts;
BOOL fConnected;
CWinThread *CRead_Thread;
CWinThread *CTimeOut;
public:
HANDLEInfo HandleInfo;
BOOL TraceFlag;
char Trace_File[50];
int TraceMode;
public:
CCommDevice();
~CCommDevice();
BOOL Open(char*);
BOOL Open(char*,DCB*);
void SetCommHwnd(HWND);
HWND GetCommHwnd(void);
void SetReadTimeOut(DWORD);
int Read(char*, DWORD);
BOOL Write(char*, DWORD);
int ReadBlock(char*,unsigned int,DWORD);
int ReadComm(char *,unsigned int,DWORD,DWORD);
int EventRead(char*,unsigned int,DWORD,DWORD);
BOOL CreateReadThread(LPVOID);
BOOL CreateTimeOutThread(LPVOID);
void KillReadThread(void);
void KillTimeOutThread(void);
void PurgeCommBuf(int);
void PutTraceFile(char*,int);
void CommTrace(char*,char*,DWORD,int,int);
void Close(void);
int InStr(char*,char*);
void TrimLeft(char*);
void TrimRight(char*);
int Intercept(char*,int,char*,char*);
void ChangeStr(char*,char*,char*);
public:
HANDLE getpara()
{ return hCom; }
void putpara(LPVOID lparam)
{
hCom = lparam;
fConnected = true;
GetCommTimeouts(hCom, &CommTimeOuts);
HandleInfo.ThreadRun=false;
CRead_Thread=NULL;
CTimeOut=NULL;
}
};
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -