Не удается открыть включаемый файл: 'cpprest/ws_client': нет такого файла или каталога

Я работаю над проектом, который использует C++ RESTAPI. Я предпочитаю учебник по Касабланке. В соответствии с этим руководством я добавил Casablanca в свой проект C++ с помощью диспетчера пакетов NuGet. Я использую Visual Studio 2015 Enterprise Edition. Но при включении следующих файлов он показывает ошибку на #include <cpprest/ws_client>, Я уже установил дополнительные каталоги "Включить" и "Дополнительные каталоги библиотек", которые формируют свойства проекта следующим образом.

Дополнительный каталог включения <project_dir>\packages\cpprestsdk.v140.windesktop.msvcstl.dyn.rt-dyn.2.9.1\build\native\include

Дополнительные каталоги библиотеки <project_dir>\packages\cpprestsdk.v140.windesktop.msvcstl.dyn.rt-dyn.2.9.1\lib

Я добавил реальные скриншоты здесь. Как это исправить?

#include <iostream>
#include <cpprest/http_client.h>
#include <cpprest/filestream.h>
#include <cpprest/http_listener.h>              // HTTP server
#include <cpprest/json.h>                       // JSON library
#include <cpprest/uri.h>                        // URI library
#include <cpprest/ws_client>                    // WebSocket client
#include <cpprest/containerstream.h>            // Async streams backed by STL containers
#include <cpprest/interopstream.h>              // Bridges for integrating Async streams with STL and WinRT streams
#include <cpprest/rawptrstream.h>               // Async streams backed by raw pointer to memory
#include <cpprest/producerconsumerstream.h>     // Async streams for producer consumer scenarios

using namespace utility;                    // Common utilities like string conversions
using namespace web;                        // Common features like URIs.
using namespace web::http;                  // Common HTTP functionality
using namespace web::http::client;          // HTTP client features
using namespace concurrency::streams;       // Asynchronous streams
using namespace web::http::experimental::listener;          // HTTP server
using namespace web::experimental::web_sockets::client;     // WebSockets client
using namespace web::json;                                  // JSON library 

(Я пробовал с Visual Studio 2017,2013 также. Но результат тот же.)

1 ответ

Решение

Вы не включаете заголовочный файл правильно, поэтому ссылка не может быть разрешена: Использование #include <cpprest/ws_client.h> вместо #include <cpprest/ws_client> будет работать на вас.

Другие вопросы по тегам