12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- #pragma once
- #include <tchar.h>
- #include <Windows.h>
- #include "CSerialPort/sigslot.h"
- #include "CSerialPort/SerialPort.h"
- #include "CSerialPort/SerialPortInfo.h"
- using namespace itas109;
- class SerialPortSlot : public has_slots<>
- {
- public:
- SerialPortSlot(CSerialPort& serialPort, HANDLE startAPPEvent);
- virtual void onMessage();
- protected:
- virtual int handleMessage(const char* szContent, int nRecv);
- virtual int onStartAPP();
- virtual void printMessage(const char* szData, int size);
- private:
- CSerialPort m_serialPort;
- HANDLE m_hStartAPPEvent;
- };
- class SerialPortManager
- {
- public:
- SerialPortManager();
- virtual ~SerialPortManager();
- virtual int initialize();
- virtual int listenCOMandStartApp(const TCHAR* szAppPath, const TCHAR* szAppArgs);
- virtual int sendStartedApp();
- virtual int sendCloseApp();
- protected:
- virtual void release();
- virtual int writeData(const char* szBuf, int size);
- virtual int initEvent();
- virtual int startAPP(const TCHAR* szAppPath, const TCHAR* szAppArgs);
- protected:
- CSerialPort* m_serialPort;
- SerialPortSlot* m_serialPortSlot;
- HANDLE m_hStartEvent;
- };
|