Предотвращение искажения имени COM - PullRequest
4 голосов
/ 08 марта 2011

Я пытаюсь написать замену для dll VB6, на которую ссылается другой VB6 в c # .net.

На данный момент мы можем работать только на более поздних версиях, и у меня есть некоторые успехи с этим.За исключением того, что я столкнулся с проблемой.

Мои Enums искажаются, в результате чего его называют «A1BACSTrans_BACSAU» вместо ожидаемого «BACSAU»

, и унаследованный код (очевидно) больше не будет компилироваться.

Можно ли это предотвратить?если да, то как?Я слышал об изменении IDL, но я не вижу ссылок на их искаженное имя, только не исправленное ...

Заранее спасибо!

1 Ответ

1 голос
/ 09 марта 2011

Ребята, я тоже обсуждал это на c-sharpcorner, и хотя я в основном сам пришел к решению, у меня там есть документ

http://www.c -sharpcorner.com / Форум / Тема / 111642 / предотвращение-ком-имя-mangling.aspx

В сущности, я нашел способ изменить IDL.

Я бы хотел знать, есть ли способ сделать это в коде, может быть, атрибут, но если есть способ, которого я не знаю!

...