Logo Море(!) аналитической информации!
IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware
Архив форумов ЦИТФорума
Море(!) вопросов - Море(!) ответов
 
 FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 
Как правильно задавать вопросы

Как конвертнуть BYTE * в BSTR или VARIANT

 
Перейти:  
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование
Предыдущая тема :: Следующая тема  
Автор Сообщение
maxa
Гость





СообщениеДобавлено: Пт Июн 25 2004 13:27    Заголовок сообщения: Как конвертнуть BYTE * в BSTR или VARIANT Ответить с цитатой

Господа, подскажите как мне конвертнуть 'BYTE *' в BSTR или VARIANT. У меня есть компонента которая читает данные из порта,
ясное дело там может прийти строка любой длинны. Необходимо эти данные данные передать приложению на VFP.

Метод в VFP которому передаются параметры описан так:
PROCEDURE EVReciveData(cdata as String) as Variant
RETURN cdata
но могу и поменять чтобы принимал variant

В VС вижу что мне нужно передавать:
m_Tmyclass->EVReciveData(_bstr_t сdata);
в случае если будет variant приниматься клиентом
будет _variant_t
m_Tmyclass->EVReciveData(_variant_t &сdata);

Буфер порта , объявлен как :
BYTE *InStr = (BYTE *)malloc(inQ);
inQ - реальное количество байт котрое мне пришло в порт, что вообще-то не важно, важно-то что оно не константа. Причем поток из порта может содержать байты от 0x00 до 0x1F.
Как мне преобразовать полученные данные из порта к виду необходимомоу для передачи ?

Счас делаю так:
CComBSTR _bstr_data;
_bstr_data.AppendBytes(char* InStr,inQ);
m_Tmyclass->EVReciveData(_bstr_t(_bstr_data));
Приложение получает совсем не то что должно, строку мусора.
Как мне к примеру правильно преобразовать к примеру
{0x00,0x00,0x00,0xA1,0x00...} в BSTR или засунуть ее в VARIANT или
как нибудь через SAFEARRAY замутить. Буду благодерен за любые советы! Помогите пожалуйста.
Помогите пожалуйста.

P/S : Пишу на VC++
Вернуться к началу
Показать сообщения:   
Этот форум закрыт, вы не можете писать новые сообщения и редактировать старые.   Эта тема закрыта, вы не можете писать ответы и редактировать сообщения.    Список форумов Архив форумов ЦИТФорума -> Программирование Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2002 phpBB Group
Русская поддержка phpBB

 

IT-консалтинг Software Engineering Программирование СУБД Безопасность Internet Сети Операционные системы Hardware

Информация для рекламодателей PR-акции, размещение рекламы — adv@citforum.ru,
тел. +7 495 6608306, ICQ 232284597
Пресс-релизы — pr@citforum.ru
Послать комментарий
Информация для авторов
This Web server launched on February 24, 1997
Copyright © 1997-2000 CIT, © 2001-2006 CIT Forum
Внимание! Любой из материалов, опубликованных на этом сервере, не может быть воспроизведен в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения владельцев авторских прав. Подробнее...