#include "stdafx.h" #include "global.h" #define CONAPPNAME "Config" #define CONPATH ".\\conn.ini" string getConfig(string key) { char ch[100] = { 0 }; GetPrivateProfileString(CONAPPNAME, key.c_str(), "", ch, 100, CONPATH); string val = ch; return val; } int getConfig_INT(string key) { char ch[100] = { 0 }; GetPrivateProfileString(CONAPPNAME, key.c_str(), "", ch, 100, CONPATH); return atoi(ch); } void saveConfig(string key,string val) { WritePrivateProfileString(CONAPPNAME, key.c_str(), val.c_str(), CONPATH); } void saveConfig(string key, int val) { WritePrivateProfileString(CONAPPNAME, key.c_str(), std::to_string(val).c_str(), CONPATH); } WORD calccrc(BYTE crcbuf, WORD crc, WORD polynom) { BYTE i; crc = crc ^ crcbuf; for (i = 0; i<8; i++) { BYTE chk; chk = crc & 1; crc = crc >> 1; crc = crc & 0x7fff; if (chk == 1) crc = crc^polynom; crc = crc & 0xffff; } return crc; } //注意modbus算出来高低位要调转 WORD chkcrc_modbus(BYTE *buf, WORD len, WORD polynom) { WORD i; WORD crc; crc = 0xffff; for (i = 0; i