안녕하세요. 수고가 많으십니다.
다름이 아니라..
시스템.
Windows XP
C++ Builder 6.0
///소스 코드...
char msg[32], msg1[32];
DWORD dwIndex = 0;
AnsiString szData;
ZeroMemory(msg, 32);
//국번..
msg[dwIndex++] = wChNo;
//명령어 코드..
msg[dwIndex++] = wCodeNo;
//설정값 주소지..
wData.wData = wAddr;
msg[dwIndex++] = wData.byData[1];
msg[dwIndex++] = wData.byData[0];
//데이터 갯수..
msg[dwIndex++] = 0x00;
msg[dwIndex++] = 0x01;
//Check Sum CRC16..
wData.wData = GetCheckSum_CRC16(msg, dwIndex);
msg[dwIndex++] = wData.byData[0];
msg[dwIndex++] = wData.byData[1];
이부분이 중요...!
Send(m_nPortNum, msg, ++dwIndex);
함수 원형..
bool CExTempCtrl::Send(int PortNo, BYTE *Msg, DWORD len)
msg : "0x01 0x04 0x03 0xE8 0x00 0x01 0xB1 0xBA" <--요걸 그대로 복사하고 싶습니다...
문제는 중간에 " msg[dwIndex++] = 0x00; " 이값이 꼭 들어가야 하는데..
값이 포인터 변수로 복사 될때에 0x00 앞의 값(msg : "0x01 0x04 0x03 0xE8")만 전달이 됩니다...ㅜ
이 값을 전체적으로 전달 할수 있는 방법 없을까요 ?
문자열 복사를 해도 0x00 값 앞의 값만 복사가 됩니다...크흑..
도와주십쇼~~~
|