0

我想运行发布在 Windows 开发者计划网站上的 C++ REST SDK 示例:https ://ms-iot.github.io/content/Casablanca.htm

我非常小心地按照步骤操作,还使用了 cpprest lib 的 2.2 版本而不是最新版本(2.4),结果是我可以成功运行该项目并将其部署在我的 Galileo 上,但是当客户端对象尝试解析时使用页面中发布的示例的请求我收到以下错误:

Error exception:Error in: WinHttpSendRequest.

代码是上面链接中的 main.cpp,我正在尝试在我的 Intel Galileo 中运行它。

感谢任何帮助,因为找不到有关此错误的信息有点令人沮丧。

4

1 回答 1

1

WinHttpSendRequest API 中最常见的错误原因是网络/DNS/防火墙问题。

一件容易检查的事情是从 Galileo (Telnet) 命令行 ping www.bing.com。如果失败了,那么几乎可以肯定这就是原因。您可以将 www.bing.com 替换为 IP 地址作为一种快速而简单的解决方法。

如果不是这样,防火墙是否有可能阻止您的请求(例如,如果您位于公司防火墙后面)?

您是否在 Visual Studio 调试器中运行了代码?你能缩小异常发生的范围吗?

如果这没有帮助并且您被卡住了,您可能想尝试非卡萨布兰卡方法: http: //msdn.microsoft.com/en-us/library/windows/desktop/ms737889 (v=vs.85 ).aspx。就我个人而言,我发现 Casablanca 的异步结构令人困惑,并且在我的项目(基本 HTTP 客户端请求)中并没有多大好处。对 Winsock 的支持与在 Galileo 上运行的 Windows 映像打包在一起,因此不需要杂乱的 prereq 配置。

担。

于 2015-01-05T19:14:09.373 回答