Как подключить программу C ++ к службе WCF? - PullRequest
8 голосов
/ 11 марта 2011

В месте, где я работаю, есть некоторые программы, написанные на C #, и некоторые программы, написанные на C ++ (наиболее важные).Некоторое время назад мы решили, что было бы неплохо отследить любую возможную проблему в программном обеспечении, отправив информацию о трассировке стека и исключениях через веб-сервис.Поэтому я пришел с сервисом WCF, который получает информацию, сохраняет ее в базе данных и отправляет автоматическое электронное письмо.Это сработало, мы должны были защитить его паролем, все готово, но теперь я хочу, чтобы наше другое программное обеспечение, написанное на C ++, использовало этот веб-сервис (это программное обеспечение используется как в Windows, так и в Linux, поэтому мы не можем просто сделатьвызов другого программного обеспечения на пользовательском компьютере).

Я нашел его в Google и нашел этот учебник о том, как использовать gSOAP , который до сих пор не использовался.мне не очень помогает (много ошибок, это не очень подробно, и файл web.config невозможно прочитать).Мне было интересно, есть ли другой способ добиться этого.Кроме того, поскольку я использую аутентификацию на своем веб-сервисе, теперь у него есть wsHttpBinding (который AFAIK не поддерживается gSOAP ).

Можете ли вы, ребята, помочь мне?

Ответы [ 2 ]

5 голосов
/ 21 марта 2013

Поскольку ваша служба WCF находится на C # с .NET, и единственная проблема заключается в том, чтобы приложение C ++ могло с ней общаться, один из способов - следовать рекомендациям Конечные точки REST / SOAP для службы WCF. и соответствующие статьи.

Ваши программы на C # по-прежнему имеют полный SOAP-доступ к вашему сервису.Ваши программы на C ++ могут сделать что-то подобное для доступа к REST:

  • «Просмотреть» URL-адрес HTTP GET для нужной вам команды службы.
  • Затем бросить (или проанализировать и использовать)какой бы ответ не был получен.

Это довольно минимальное изменение в вашей службе WCF, предлагая как SOAP, так и REST.Возможность REST открывает ваш сервис для JavaScript, а также для клиентов C ++.

Возможно, вам придется ограничить интерфейс простыми данными или объектами класса, которые легко анализировать в C ++.

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

Будет ли на машинах с приложениями C ++ установлен .NET Framework?

Проверить: Создать службу WCF для неуправляемых клиентов C ++

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...