![]() |
|
|
![]()
|
|
| RastaDja |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 337 Регистрация: 1.11.2010 Репутация: 1 Всего: 5 |
Здраствуйте!
есть проблема: в VARIANT хранятся какието данные, какие не известно. Задача: узнать - данные это массив и какого он типа, или это другие данные. если это массив сформировать строку mas[0]:mas[1]: ... :mas[n], где mas[i] - эллементы массива. И соответственно реализовать обратную задаче 37:6: ... :56 -> VARIANT Спассибо -------------------- The more closely you look at one thing, the less closely can you see something else. |
|||
|
||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
||||
|
||||
| RastaDja |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 337 Регистрация: 1.11.2010 Репутация: 1 Всего: 5 |
как мне теперь с этим разобраться? надо элементы массива в строку записать, а как мне создать массив нужного типа, чтоб слить данные из LPSAFEARRAY? помогите пожалуйста -------------------- The more closely you look at one thing, the less closely can you see something else. |
|||
|
||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
||||
|
||||
| RastaDja |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 337 Регистрация: 1.11.2010 Репутация: 1 Всего: 5 |
я это знаю и сам, спасибо. А можна пример?
-------------------- The more closely you look at one thing, the less closely can you see something else. |
|||
|
||||
| RastaDja |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 337 Регистрация: 1.11.2010 Репутация: 1 Всего: 5 |
как это правельно сделать? -------------------- The more closely you look at one thing, the less closely can you see something else. |
|||
|
||||
| RastaDja |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 337 Регистрация: 1.11.2010 Репутация: 1 Всего: 5 |
ChangeType выдаёт ошибку, так, как в варианте не строковый тип. Как мне правельно преобразовать данные? -------------------- The more closely you look at one thing, the less closely can you see something else. |
|||
|
||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
Нужно проверить тип элемента в SAFEARRAY, и если там VARAINT, то копировать как у вас написано. Если же нет, то руками переносить в отдельный VARIANT (по отдельности тип и тело), а потом звать ChangeType. Возможно есть и что то более прямое, не искал, за отсутствием необходимости |
|||
|
||||
| RastaDja |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 337 Регистрация: 1.11.2010 Репутация: 1 Всего: 5 |
я уже голову сломал
а что делать если 2 или 3 мерный? -------------------- The more closely you look at one thing, the less closely can you see something else. |
|||
|
||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
Печатать 2х или 3х мерные кубы
Данные в массиве лежат последовательно (вот только не помню начиная с первого или последнего индекса). Количество индексов и границы по каждому индексу можно прочесть из дескриптора SAFEARRAY'я соответствующей функцией |
|||
|
||||
| RastaDja |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 337 Регистрация: 1.11.2010 Репутация: 1 Всего: 5 |
мне не нравится. можеш помочь считать массив в поток, ато я не могу както
-------------------- The more closely you look at one thing, the less closely can you see something else. |
|||
|
||||
| RastaDja |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 337 Регистрация: 1.11.2010 Репутация: 1 Всего: 5 |
пробую так
но чтото не идёт ХЕЛП Добавлено через 5 минут и 16 секунд Добавлено через 5 минут и 44 секунды поток получился пустым Добавлено через 6 минут и 23 секунды а в массива забиты данные
Добавлено через 10 минут и 52 секунды и есчё sz - размер равен 8, хотя в массиве 11 элементов -------------------- The more closely you look at one thing, the less closely can you see something else. |
||||
|
|||||
| RastaDja |
|
||||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 337 Регистрация: 1.11.2010 Репутация: 1 Всего: 5 |
заменил на
заработало -------------------- The more closely you look at one thing, the less closely can you see something else. |
||||
|
|||||
| RastaDja |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 337 Регистрация: 1.11.2010 Репутация: 1 Всего: 5 |
я вот извлек данные из массива
не подскажите каким образом мне создать новый массив из имеющегося у меня массива байтов bt.? -------------------- The more closely you look at one thing, the less closely can you see something else. |
|||
|
||||
| xvr |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Комодератор Сообщений: 7046 Регистрация: 28.8.2007 Где: Дублин, Ирландия Репутация: 8 Всего: 223 |
||||
|
||||
![]()
|
| 1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: COM/DCOM/ActiveX/ATL/CORBA | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |