Yao Chunli
2022-05-12 b36e6fc00b53e2e40aa56db28ac58b3aef6ac102
提交 | 用户 | age
0ed438 1 
Q 2 // MTerm1.h: MTerm1 应用程序的主头文件
3 //
4 #pragma once
5
6 #ifndef __AFXWIN_H__
7     #error "include 'pch.h' before including this file for PCH"
8 #endif
9
10 #include "resource.h"       // 主符号
11
12 #include "../mylib/LOGGER/Logger.hpp"
13 #include "../MyLib/MHashINI/MHash.hpp"
14 void Trans_Tunc(unsigned int, EXCEPTION_POINTERS*);
15 #define CHECKE(func) try {func;} catch(SE_Exception &e) {DisplayException(_T(__FILE__),__LINE__,_T(__FUNCTION__),_T(#func),e);} catch (CException * e) {DisplayException(_T(__FILE__),__LINE__,_T(__FUNCTION__),_T(#func),e);} catch (...){DisplayException(_T(__FILE__),__LINE__,_T(__FUNCTION__),_T(#func));}
16 class SE_Exception
17 {
18 private:
19     SE_Exception() {}
20     unsigned int nSE;
21     PVOID Addr;
22     CString InfoStr;
23 public:
24     SE_Exception(SE_Exception& e) : nSE(e.nSE) {}
25     SE_Exception(unsigned int n) :nSE(n) {}
26     SE_Exception(unsigned int n, PVOID a) :nSE(n), Addr(a) {}
27     SE_Exception(unsigned int n, PVOID a, CString &str1) :nSE(n), Addr(a), InfoStr(str1) {}
28
29     ~SE_Exception() {}
30     unsigned int getSeNumber() { return nSE; }
31     PVOID getAddress() { return Addr; }
32     CString & getInfoStr() { return InfoStr; }
33 };
34 int DisplayException(CString File, int Line, CString Func, CString Sentence, SE_Exception &e);
35 int DisplayException(CString File, int Line, CString Func, CString Sentence, CException *e);
36 int DisplayException(CString File, int Line, CString Func, CString Sentence);
37
38 int SaveMyConfig();
39 int LoadMyConfig();
40
41 int SysLog(CString s, int channel = 0);
42 int PopupMessage(CString s, int channel = 0);
43 void DoEvents();
44
45 extern MHash MyCfg1;
46 extern Logger MyLogger1;
47
48 // CMTerm1App:
49 // 有关此类的实现,请参阅 MTerm1.cpp
50 //
51
52 class CMTerm1App : public CWinAppEx
53 {
54 public:
55     CMTerm1App() noexcept;
56
57
58 // 重写
59 public:
60     virtual BOOL InitInstance();
61     virtual int ExitInstance();
62
63 // 实现
64     UINT  m_nAppLook;
65     BOOL  m_bHiColorIcons;
66
67     virtual void PreLoadState();
68     virtual void LoadCustomState();
69     virtual void SaveCustomState();
70
71     afx_msg void OnAppAbout();
72     DECLARE_MESSAGE_MAP()
73     ULONG_PTR m_gdiplusToken;
74 };
75
76 extern CMTerm1App theApp;
77
78 class CAnsiParser;
79 class CDataParser1;
80 class KLinkProtocol;
81 class CSerialCom;
82 class HvSerialPort;
83
84 extern CAnsiParser MyAnsiParser1;
85 extern CDataParser1 MyDataParser1;
86 extern KLinkProtocol MyKLProtocol1;
87 // extern CSerialCom MySerialCom1;
88 extern HvSerialPort MyHvSerialPort1;
89
90
91 CString & intToString(int num);
92 CString & intToBinString(int num, int digits = 8);
93
94 int get_com_name(CString comx, CString &namebuf);