1 | ||||||
Работа с byte (Помещение а Variant)01.06.2015, 10:10. Показов 3067. Ответов 21
Метки нет (Все метки)
Добрый день.
В C# массив байт и переменная типа байт создаются так:
У меня вопрос. Как эти переменные объявить на самом C++, для передачи в аналогичную функцию? Я так понимаю массив надо будет конвертировать в VARIANT? Спасибо.
0
|
01.06.2015, 10:10 | |
Ответы с готовыми решениями:
21
Из Variant получить массив Byte Нельзя преобразовать тип function(a: byte;b: byte): byte к integer (Списки) Работа с VARIANT Работа с полями Variant |
2443 / 1841 / 406
Регистрация: 15.12.2013
Сообщений: 8,238
|
|
01.06.2015, 10:13 | 2 |
Костяныч, нужно больше кода.
Пока делайте аналогично только вместо byte - unsigned char.
0
|
01.06.2015, 11:30 [ТС] | 3 | ||||||||||
S_el, Вот например из C# я вызываю функцию библиотеки на C++:
Добавлено через 47 минут Надо ли byte в VARIANT переводить, если да, то как?
0
|
Заблокирован
|
||||||
01.06.2015, 11:38 | 4 | |||||
Это не плюсовая штука, точнее она не входит в стандарт, это чисто WinApi-ашный наворот (или VisualStudio-йная)
Вот определение: Кликните здесь для просмотра всего текста
в его составе есть BYTE *pbVal;, используй это как указатель на массив типа BYTE. А вообще собственно, как ты собрался из шарпа плюсовую функцию вызывать, да ещё пытаясь передать в С++ шарповые переменные... Эту проект CLI ?
0
|
01.06.2015, 11:43 [ТС] | 5 | |||||
IBM, я не знаю, но у меня проект на C# + библиотека на C++.
А сейчас на C++ пишу. Вот так я дату в вариант помещаю
0
|
01.06.2015, 13:08 [ТС] | 7 | |||||||||||||||
IBM, да, на плюсах.
а здесь вместо date что ставить?
IBM, сделал так:
Добавлено через 57 минут
0
|
01.06.2015, 13:12 [ТС] | 9 |
IBM, вы вопрос задали, я ответил на него. Вы его снова задаете. Ну ладно, еще раз отвечу подробно: Да, библиотека на плюсах.
Правильный ответ с переводом массива byte в variant описал в последнем посте.
0
|
Заблокирован
|
|
01.06.2015, 13:21 | 10 |
ты на него не ответил
потому что ты на него не ответил Что да? Причём тут плюсы? Я тебя спрашиваю ещё раз, ты сам код этой библиотеки писал или нет? Переводить его можно по разному, всё зависит от того, что с этим вариантом впоследствии делается, по этому я и спрашивал тебя про доступ к коду функции библиотеки.
0
|
01.06.2015, 14:13 [ТС] | 13 | |||||
IBM, пока так и хочу сделать, потом залезать в функцию и проверять...
Добавлено через 39 минут IBM, в общем не сработало... У меня далее идут операции
0
|
654 / 575 / 164
Регистрация: 13.12.2012
Сообщений: 2,124
|
|
01.06.2015, 14:31 | 16 |
чай в дебаггере посмотрили? лучше распечатайте, а то по указателю только первый элемент дебагер и покажет
0
|
01.06.2015, 14:34 [ТС] | 17 | |||||
IBM, нагуглил и использовал следующее:
А отправлял я 0x00 0x03.
0
|
Заблокирован
|
||||||
01.06.2015, 14:49 | 19 | |||||
Ну судя по твоему коду, ты SAFEARRAY загоняешь в parray, вроде так и надо, значит в parray и смотри. Там вроде указатель на SAFEARRAY, а читать из него так же геморойно, как и писать в него, вот что нагуглил (хотя это должен был делать ты)
1
|
654 / 575 / 164
Регистрация: 13.12.2012
Сообщений: 2,124
|
|
01.06.2015, 14:51 | 20 |
0
|
01.06.2015, 14:51 | |
01.06.2015, 14:51 | |
Помогаю со студенческими работами здесь
20
Работа с типом данных VARIANT Работа с byte[] 'utf-8' codec can't decode byte 0xff in position 0: invalid start byte UnicodeDecodeError: 'utf8' codec can't decode byte 0x80 - invalid start byte Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |