DTSearch COM Interop - Как мне выставить объекты на C #? - PullRequest
3 голосов
/ 24 февраля 2011

Я знаю, я играю здесь. Я не знаю, могу ли я вообще помочь в этом. Но вот в чем проблема.

Компания, в которой я работаю, имеет полностью лицензированную, если не старую, копию разработчика DTSearch, включая исходный код C ++. Они используют это в приложении, которое я обновляю. Мне сказали использовать его в дополнениях C # к этому приложению, над которыми сейчас ведутся работы. Однако у меня нет сборки .NET, и по какой-то причине они отказываются ее реализовывать.

Итак, я легко могу просмотреть dtengine в Обозревателе объектов, и есть много прекрасных объектов, ожидающих, чтобы я использовал их. Но никто из них не будет инстанцировать. Попытка получить меня

'dtengine.SearchJobClass' не может быть встроен. Вместо этого используйте соответствующий интерфейс.

И есть изобилие интерфейсов, я могу легко реализовать любой из них. Проблема в том, что «выбросить новое NotImplementedException» точно не завершает мой поиск.

У кого-нибудь есть какие-нибудь подсказки?

1 Ответ

0 голосов
/ 04 марта 2011

Я использовал некоторые COM-объекты, которые вы должны создать, например, так:

Foo f = new FooClass();

Имеет ли DTSearch похожие имена классов?

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

Я нашел это:

http://www.codeproject.com/KB/COM/COMBasics.aspx

обратите внимание, что если вы прокрутите вниз, то увидите, что они создают экземпляр интерфейса особым образом. Я не говорю, что это решение, но оно может помочь в вашем исследовании того, как использовать оболочку DTSearch COM в вашем приложении.

...