Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Visual C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.08.2016, 03:21   #1
Илья1910
Пользователь
 
Регистрация: 02.01.2014
Сообщений: 12
По умолчанию Com port и С++

Хочу отослать данные по ком порту на контроллер.Вот только беда,не отсылается всё сообщение,а только один символ.Как это исправить?
LPCTSTR sPortName = L"COM4";
CString ed=L"asdasd";
CString q=L"k";

hSerial = ::CreateFile(sPortName,GENERIC_READ | GENERIC_WRITE,0,0,OPEN_EXISTING,FIL E_ATTRIBUTE_NORMAL,0);

ed=ed+q;
char buffer[30];
char *b = (char*)ed.GetBuffer();
strcpy(buffer,b);

DCB dcbSerialParams = {0};
dcbSerialParams.DCBlength=sizeof(dc bSerialParams);

dcbSerialParams.BaudRate=CBR_9600;
dcbSerialParams.ByteSize=8;
dcbSerialParams.StopBits=ONESTOPBIT ;
dcbSerialParams.Parity=NOPARITY;

DWORD dwSize = sizeof(buffer);
DWORD dwBytesWritten;
LPOVERLAPPED ov;

BOOL iRet = WriteFile (hSerial,buffer,dwSize,&dwBytesWrit ten ,NULL);
CloseHandle(hSerial);
Илья1910 вне форума Ответить с цитированием
Старый 25.08.2016, 08:01   #2
waleri
Старожил
 
Регистрация: 13.07.2012
Сообщений: 6,330
По умолчанию

Подсказка:
char *b = (char*)ed.GetBuffer();
strcpy(buffer,b);

strcpy копирует строчку до первого нуля, и натыкается на него еще в первой же букве, поскольку это уникод.

Поменяйте тип проекта и/или не используйте LPTSTR / CString
waleri вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
com port kollfer Общие вопросы Delphi 3 12.04.2012 17:34
com port player891 Общие вопросы Delphi 0 21.03.2012 19:26
ip:port Reglament_ Работа с сетью в Delphi 3 29.12.2011 18:50
Port Diunix SQL, базы данных 0 18.10.2011 10:06
Com Port Pepelyaev Общие вопросы Delphi 5 26.11.2006 22:31