![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| cthutq |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 16.4.2006 Репутация: нет Всего: нет |
есть СОМ объект написанный на С++
у него есть метод func(ULONG* size, BYTE* buffer); под .NET этот метод стал иметь вид void func (ref uint, ref byte); я создал массив byte[] buffer = new byte[100]; и передаю его uint size = buffer.Length; func(ref size, ref buffer[0]); но изменяется только первый байт а остольное пишется непонятно куда есть подозрение что buffer[0] возвращает копию и в функцию я передаю ссылку на локально созданный только один байт как правильно ? |
|||
|
||||
| -ser- |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 344 Регистрация: 1.2.2005 Репутация: 5 Всего: 13 |
а зачем ты указываешь func(ref size, ref buffer[0]); ?
почему не func(ref size, ref buffer); -------------------- "Тонкая, однако, работа." |
|||
|
||||
| cthutq |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 16.4.2006 Репутация: нет Всего: нет |
||||
|
||||
| ivashkanet |
|
|||
![]() Кодю потиху ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3684 Регистрация: 23.2.2006 Где: Гомель, Беларусь Репутация: 47 Всего: 149 |
Имя массива и есть ссылка на массив
А не первый элемент как в С |
|||
|
||||
| cthutq |
|
|||
|
Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 16.4.2006 Репутация: нет Всего: нет |
||||
|
||||
| ivashkanet |
|
|||
![]() Кодю потиху ![]() ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 3684 Регистрация: 23.2.2006 Где: Гомель, Беларусь Репутация: 47 Всего: 149 |
А кто его знает, я в С не силен (так мелкие програмки).
А нельзя COM переписать, чтоб он явно использовал массив, а не ссылку на первый элемент. Это сообщение отредактировал(а) ivashkanet - 19.4.2006, 08:15 |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [code=csharp][/code] для подсветки кода. Используйтe чекбокс "транслит" если у Вас нет русских шрифтов. Что делать если Вам помогли, но отблагодарить помощника плюсом в репутацию Вы не можете(не хватает сообщений)? Пишите сюда, или отправляйте репорт. Поставим :) Так же не забывайте отмечать свой вопрос решенным, если он таковым является :) Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, mr.DUDA, THandle. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Общие вопросы по .NET и C# | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |