Вызов службы WCF из .net dll, которая вызывается из c ++ dll - PullRequest
1 голос
/ 11 октября 2011

Я нашел этот Как экспортировать методы C #? ответ, который частично решил мою проблему, т.е. я использовал этот шаблон https://sites.google.com/site/robertgiesecke/Home/uploads#TOC-Version-1.1.3 (как предложено SLaks) для вызова моей dll в нативном коде C ++.

Я сталкиваюсь с двумя проблемами при использовании этого шаблона неуправляемого экспорта, я не могу точно сказать, были ли они вызваны этим шаблоном или они должны что-то делать с совместимостью C # и C ++.

Первая проблема заключалась в том, что, когда я пытался вызвать функцию .NET DLL стороннего производителя из моей .NET DLL, которая, в свою очередь, вызывалась собственным кодом C ++, он выдал ошибку:

Собственный C ++ -> MyDLL (.NET DLL) -> ThirdParty.NET DLL

Я нашел решение здесь Проблема в использовании .net dll из c ++ dll через слой c ++ / cli Я должен был подписать мою DLL.

Теперь вторая проблема:

Когда я пытаюсь сделать то же самое со службой WCF, то есть, добавив ссылку на службу WCF в MyDLL, инициирующую ее и вызывающую функции, программа завершается на C ++ end

Собственный C ++ -> MyDLL (.NET DLL) -> Ссылка на службу WCF

Я даже пытался сделать это, и это работало до AnotherDLL (которое было подписано), но не работало на WCF

Собственный C ++ -> MyDLL (.NET DLL) -> AnotherDLL (.NET DLL) -> Справочник службы WCF

До сих пор я обнаруживал, что всякий раз, когда я пытаюсь что-либо инициализироватькласс из службы WCF (Service Client, класс DataContract, который он нарушает).

Если у кого-то есть идея, я бы очень ее оценил, и какой еще подход был бы лучшим для этой проблемы.

Спасибо

...