2015-08-27 2 views
0

Мне нужно реализовать прокси-сервер клиента для веб-службы wcf, используя gSOAP в C++. Я использовал страницу Getting Started (в разделе «Пример gSOAP-клиента (C++)») для создания клиентского прокси-сервера для проверки моего веб-сервиса. Когда я хочу построить проект с использованиемошибка: «memcpy_s» не была объявлена ​​в этой области в gSOAP

c++ -o calcclient calcclient.cpp soapC.cpp soapcalcProxy.cpp stdsoap2.cpp 

команды я получаю следующие ошибки:

enter image description here

Кажется, есть некоторые стандартные библиотеки, которые не включены в stdsoap2.cpp. Я использую MinGW в качестве компилятора, а моя ОС - Windows 8.

+0

Вы включили 'cstring'? Какую версию MinGW вы используете? – Youka

+0

нет. Я использую MinGw, включенную в кодовый блок в http://sourceforge.net/projects/codeblocks/files/Binaries/13.12/Windows/codeblocks-13.12mingw-setup.exe –

+0

@Youka Я добавил cstring в stdsoap2.cpp, но не работает. –

ответ

2

memcpy_s - безопасная версия memcpy и обычно поставляется со стандартными библиотеками. MSVC делает, MinGW64 тоже.

С кодом :: Блоки вы получаете TDM GCC, который находится за MinGW64 и, похоже, не имеет безопасного API. Просто загрузите MinGW64, настройте Code :: Blocks, чтобы использовать этот компилятор, и все должно быть хорошо.

+0

спасибо, но в списке компиляторов нет MinGW64. Выбранный компилятор - это компилятор GNU GCC. –

+0

Открыть ** Код :: Блоки -> Настройки -> Компилятор ... **, выбрать или скопировать _GNU GCC Compiler_ и настроить. Вкладка ** Исходные файлы Toolchain ** должны ссылаться на MinGW64 с дополнительным путём на каталог подкомпилятора, т. Е. "E: \ mingw32 \ i686-w64-mingw32". Отдых - это вопрос CB, который легко решить путем поиска в Интернете. – Youka

+0

У меня одна ошибка, и много ошибок ушло! Теперь моя ошибка: ошибка: «wctomb_s» не был объявлен в этой области | –