В приложении C ++ COM у меня есть проблемы с аналогичными именами функций в C # - PullRequest
0 голосов
/ 14 июня 2019

У меня есть приложение C ++ COM с большим количеством классов. У одного класса Utils есть функция GDALWarp () У меня есть второй класс с похожими функциями, но с другим подходом под названием GdalUtils, и у него есть функция с именем GdalWarp ().

В моем idl у меня есть обе функции. Первый с прописной буквы GDAL, а другой нет.

Я использую это приложение COM в приложении C #, и когда я создаю экземпляр GdalUtils (), у меня есть только GDALWarp (верхний регистр), а не GdalWarp (). Но он все еще выполняет правильную функцию в приложении COM. Когда я закомментирую функцию GDALWarp в idl, у меня есть GdalWarp (в нижнем регистре).

Почему эта разница?

Идентификатор находится на GitHub: https://github.com/MapWindow/MapWinGIS/blob/develop/src/MapWinGIS.idl#L4584 https://github.com/MapWindow/MapWinGIS/blob/develop/src/MapWinGIS.idl#L6640

1 Ответ

0 голосов
/ 21 июня 2019

После уточнения @HansPassant я переименовал функцию и теперь проблема решена.

...