![]() |
|
Модераторы: Partizan, gambit |
![]()
|
|
| erm0l0v |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 157 Регистрация: 11.1.2011 Репутация: 1 Всего: 1 |
Есть код на Delphi, там используется структура
Как создать такую-же структуру на C#, чтобы можно было передать в Delphi? Мне в конечном итоге нужно преобразовать эту структуру в IntPtr. По всей видимости нужно использовать Marshal, правда не совсем понимаю как. |
|||
|
||||
| erm0l0v |
|
||||||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 157 Регистрация: 11.1.2011 Репутация: 1 Всего: 1 |
Я сделал так:
Объявил структуру
А заполняю так:
Но так при заполнении выдает ошибку.
Видимо нужно определить размер данных где то при объявлении IntPtr |
||||||
|
|||||||
| Kaerus |
|
|||
|
WPF'er ![]() Профиль Группа: Участник Сообщений: 89 Регистрация: 3.9.2010 Репутация: нет Всего: 1 |
Про заполнение: во второй строке ты просто полю DataType присваиваешь пустой IntPrt который указывает на адрес 0x00000000, а затем в 3 строке ты записываешь в память по нулевому адресу - по этому и ошибка записи в зашищенную память
P.S. Не понимаю зачем вообще работать со структурами (поля которых хранятся в стеке), когда есть классы Это сообщение отредактировал(а) Kaerus - 17.1.2011, 16:02 |
|||
|
||||
| erm0l0v |
|
|||
|
Бывалый ![]() Профиль Группа: Участник Сообщений: 157 Регистрация: 11.1.2011 Репутация: 1 Всего: 1 |
проблему решил:
Добавлено через 1 минуту и 50 секунд Не совсем понимаю как в моем примере можно использовать класс. (Доступа к коду на Delphi нет, там по любому будет структура) |
|||
|
||||
![]()
|
| Прежде чем создать тему, посмотрите сюда: | |
|
|
Используйте теги [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. |