Protocol.h 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. #define NAME_LEN 128
  2. #define DATA_LEN 256
  3. #pragma region Simple communication protocol
  4. #pragma pack(push)
  5. #pragma pack(1)
  6. typedef enum
  7. {
  8. //////////////////////////////////////////////////////////////////////////
  9. // 服务端:发出劫持消息; 客户端返回:成功/失败
  10. S2C_BEGIN_HIJACK,
  11. // 服务端:发出恢复消息; 客户端返回:成功/失败;
  12. S2C_END_HIJACK,
  13. //\ 服务端:发出Connect消息; 客户端返回:成功/失败;
  14. S2C_CONNECT,
  15. //\ 服务端:发出Disconnect消息; 客户端返回:成功/失败;
  16. S2C_DISCONNECT,
  17. //\ 服务端:发出CheckFW消息; 客户端返回:成功/失败;
  18. S2C_CHECKFW,
  19. //\ 服务端:发出Go消息; 客户端返回:成功/失败;
  20. S2C_GO,
  21. //////////////////////////////////////////////////////////////////////////
  22. // 客户端:发出Disconnect触发结果;
  23. C2S_DISCONNECT,
  24. // 客户端:发出Connect触发结果;成功/失败;
  25. C2S_CONNECT,
  26. // 客户端:发出CheckFW触发结果; 成功/失败; (成功->服务端读取当前版本);
  27. C2S_CHECKFW,
  28. // 客户端:发出Go触发结果;成功/失败; 成功->耗时值、输出目录
  29. C2S_GO,
  30. // 客户端:产生异常时通知服务端结束程序;
  31. C2S_EXCEPTION,
  32. };
  33. typedef struct _HEADER_
  34. {
  35. // 协议标识符;
  36. BYTE byProtocol;
  37. // 整个协议包长度;
  38. DWORD dwPackageLen;
  39. // 消息类型;
  40. BYTE byMsgType;
  41. _HEADER_()
  42. {
  43. byProtocol = 0xAC;
  44. dwPackageLen = 0;
  45. byMsgType = 0;
  46. }
  47. }DATAHEADER, *LPDATAHEADER;
  48. // 请求包
  49. typedef struct _PACKAGE_ {
  50. DATAHEADER header;
  51. //BYTE buf[4]; // 具体内容(指针地址);
  52. LPVOID buf;
  53. }PACKAGE, *LPPACKAGE;
  54. typedef struct _MSG_INFO_
  55. {
  56. // 客户端ID;
  57. DWORD dwClientId;
  58. // 客户端名称;
  59. TCHAR szClientName[NAME_LEN];
  60. // 按钮执行结果;
  61. BYTE byResult;
  62. // 按钮数据;
  63. BYTE byData[DATA_LEN];
  64. _MSG_INFO_()
  65. {
  66. byResult = 0;
  67. dwClientId = 0;
  68. memset(byData, 0, DATA_LEN);
  69. memset(szClientName, 0, sizeof(TCHAR)*NAME_LEN);
  70. }
  71. }MSG_INFO,*LPMSG_INFO;
  72. #pragma pack(pop)
  73. #pragma endregion 简单通信协议