Функция, написанная в COM-объекте Delphi2010, не видна в C # .net - PullRequest
1 голос
/ 06 августа 2010

Я написал функцию в COM-объекте Delphi 2010. Эта функция вернет строку, используя PChar. Я пытался использовать объект COM в C # .net. Итак, я добавил ссылку на COM DLL в моем C #. NET приложение.

Я обнаружил, что функция не отображается в списке проводника References, тогда как другие функции, которые я написал ранее, доступны.

Я не мог понять причину этой странной проблемы. Я снова зарегистрировался и зарегистрировал COM-объект, но проблема все еще та же?

Мы столкнулись с некоторыми проблемами при использовании типа String. Итак, мы попробовали pchar.

Пример кода в Delphi 2010

function TILCalculation.TestString (out Rslt: PChar): WordBool; Var sRes: String; begin sRes: = 'Это мои тестовые данные !!!'; StrPCopy (Rslt, SRES); конец;

Я попробовал следующее в C # .net Выбранные ссылки в WindowsFormApplication Selected Добавить ссылки и выбрать вкладку COM Выбранный объект COM.

Я заметил, что мой COM-объект виден в браузере объектов. Итак, я расширил объект и проверил. Увы!!! Эта функция не видна в ссылках C # .net. Все созданные ранее функции видны

Любая помощь будет очень ценится

Tks in adv Ven

1 Ответ

1 голос
/ 06 августа 2010

PChar - это не обычный тип в COM. Вы пробовали использовать WideString вместо этого?

PS: См. Предложение Роба включить несколько примеров кода для лучшего ответа.

...