C ++ MFC ocx в проекте C #, параметры указателя - PullRequest
0 голосов
/ 11 сентября 2011

Я успешно перенес старый проект MFC, созданный в VC6, на VS2010.Этот проект создает ocx-файл, который я могу использовать в качестве activeX в C # и вставить в мою winform (перетаскивание).

Нет проблем, пока нет.Когда я пытаюсь найти свои рутины, все приходит в норму.Некоторые функции рендеринга изображений в этот элемент управления OCX.Для этой процедуры мне нужно передать параметры.Это длинный тип параметра в C ++.Этот параметр является указателем (который часто используется в C ++).

В C # в других руках мы получили некоторые ограничения.Некоторые типы данных не могут быть использованы.Когда я смотрю на тип в C #, я вижу его INT32.Из-за преобразования в int32 он удаляет мой указатель с 0FF55885 до 0.

Каков наилучший подход к работе с указателями в C # и как мне получить ритм преобразования?

Редактировать:немного больше информации

Это моя функция c ++: AddPixelMatrix (long lID, ..., long l2DPixelArray, long lWidth, long lHeight, long lColorArray, long lNofColors, long lStretchWithImage)

в моемc #

axImgView1.AddPixelMatrix (параметр1, ...);все параметры имеют тип int

1 Ответ

0 голосов
/ 11 сентября 2011

Любой указатель может быть выделен как System.IntPtr.

...