123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173 |
- // HSCDlg.h : header file
- //
- #pragma once
- #include <vector>
- #include "afxcmn.h"
- #include "afxwin.h"
- #include <string>
- #define HEAD_LEN 4+8+32
- struct HSCDATA
- {
- CString name;
- CString path;
- CString version;
- CString time;
- CString len;
- CString crc;
- CString addr;
- CString version_add;
- int nLen;
- int nCrc;
- int nAddr;
- int count;
- int newcrc;
- };
- class DATASET
- {
- public:
- DATASET()
- {
- //beginaddr = HEAD_LEN;
- }
- void insertdata(HSCDATA data)
- {
- m_datas.push_back(data);
- //beginaddr += 4 + 4 + 8 + 4 + 4 + 4 + data.nLen;
- //ÖØÐ¼ÆËãÆðʼµØÖ·
- int subheads = 0;
- int lastlen = 0;
- for (auto &tda:m_datas)
- {
- subheads = (4 + 4 + 8 + 4 + 4 + 4)*m_datas.size();
- tda.nAddr = HEAD_LEN + subheads + lastlen;
- tda.addr = std::to_string(tda.nAddr).c_str();
- lastlen += tda.nLen;
- }
- }
- int getbeginaddr()
- {
- return beginaddr;
- }
- int getcount()
- {
- return m_datas.size();
- }
- std::vector<HSCDATA> getdatas()
- {
- return m_datas;
- }
- std::vector<HSCDATA> m_datas;
- private:
- int beginaddr;
- };
- // CHSCDlg dialog
- class CHSCDlg : public CDialogEx
- {
- // Construction
- public:
- CHSCDlg(CWnd* pParent = NULL); // standard constructor
- // Dialog Data
- enum { IDD = IDD_HSC_DIALOG };
- protected:
- virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support
- // Implementation
- protected:
- HICON m_hIcon;
- // Generated message map functions
- virtual BOOL OnInitDialog();
- afx_msg void OnPaint();
- afx_msg HCURSOR OnQueryDragIcon();
- DECLARE_MESSAGE_MAP()
- public:
- afx_msg void ChooseA();
- afx_msg void ChooseB();
- void GetInfo_A();
- void GetInfo_B();
- void GetInfo_C();
- CString m_name_A;
- CString m_name_B;
- CString m_name_C;
- CString m_path_A;
- CString m_path_B;
- CString m_path_C;
- CString m_username;
- afx_msg void OnDropFiles(HDROP hDropInfo);
- afx_msg void Generate();
- CString m_version_A;
- CString m_time_A;
- CString m_len_A;
- CString m_crc_A;
- CString m_addr_A;
- int m_nLen_A;
- int m_nCrc_A;
- int m_nAddr_A;
- CString m_version_B;
- CString m_time_B;
- CString m_len_B;
- CString m_crc_B;
- CString m_addr_B;
- int m_nLen_B;
- int m_nCrc_B;
- int m_nAddr_B;
- CString m_version_C;
- CString m_time_C;
- CString m_len_C;
- CString m_crc_C;
- CString m_addr_C;
- int m_nLen_C;
- int m_nCrc_C;
- int m_nAddr_C;
- DATASET dataset;
- int GetInfo(CString name,CString path,HSCDATA& data);
- afx_msg void ChooseC();
- CListCtrl m_listctrl;
- void updatelistctrl();
- void updatelist();
- afx_msg void OnNMClickList1(NMHDR *pNMHDR, LRESULT *pResult);
- CEdit ED_CURNAME;
- CEdit ED_CURVER;
- afx_msg void OnBnClickedUpdate();
- afx_msg void OnBnClickedButton6();
- };
|