问题标签 [wininet]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
7908 浏览

c# - 覆盖 HTTP 请求中的 IP

寻找一种发出 HTTPwebrequest 的方法,或使用浏览器控件或 winhttp 向 URL 发出请求,但将其连接到的 IP 地址从 DNS 查找覆盖到特定的 IP 地址。

尝试执行类似于 HOSTS 文件的操作,但以编程方式执行,而无需修改此文件。它可以是 C# 或 C+

为什么我需要它,我发送请求的主机有多个 IP,并且它们的域服务器正在跨不同的 IP 进行负载平衡。试图将请求强制发送到特定 IP,但我需要 http 请求中的主机仍然是原始主机。我需要以编程方式进行此操作,因为每次我需要运行此测试时更改主机文件太耗时。

0 投票
1 回答
653 浏览

windows - WinInet 和 SOAP

目前我使用 CURL 开放传输库来生成带有肥皂头的 http 请求。这一切都是用 C/C++ 实现的。我能够将它移植到 Windows 移动,但是我想知道我是否可以使用 WinInet 来执行 SOAP 请求?只是为了在移动设备上使用更少的内存。

是否有关于如何执行此操作的示例?

提前感谢贾斯珀

0 投票
2 回答
1440 浏览

delphi - 上传时 FtpOpenFile 返回 nil 而不是文件句柄

我在 Delphi 中使用 ftp 传输文件。

我可以连接到 ftp 帐户,但是当我尝试上传文件时,FtpOpenFile 函数返回 nil 而不是处理要上传的文件。

如果我使用 ftp 客户端应用程序和完全相同的凭据登录 ftp 站点,我可以毫无问题地上传文件。

任何建议表示赞赏。

0 投票
1 回答
762 浏览

windows - WinInet C++ ftp 模板?

从零开始,想用WinInet创建一个ftp应用程序。
在 C++ 中寻找一个真正的基本示例,它将编译并让我开始。

谢谢。

0 投票
2 回答
1386 浏览

c++ - 如何在 C++ 中包装 CFtpFileFind 示例?

试图用 C++ 包装这个简短的例子。(自从我这样做以来已经有一段时间了)。

。H -

.cpp -

所以基本上将连接和文件操作分为两个功能。findFile() 函数正在抛出断言。(进入 findFile() 并且它具体位于 inet.cpp 中的第一个 ASSERT_VALID(m_pConnection)。)

我通过 arround CFtpConnection* pConnect 的方式如何?

编辑- 看起来 CObject vfptr 在 GetFiles() 函数中被覆盖(0X00000000)。

任何帮助表示赞赏。谢谢。

0 投票
1 回答
3330 浏览

c - 为什么 FormatMessage() 找不到 WinINet 错误消息?

我正在运行它来测试FormatMessage

但是,当它返回时lpMsgBuf包含 NULL ......我期待像ERROR_INTERNET_DISCONNECTED这样的东西。

有什么看起来不对劲吗?谢谢。

0 投票
1 回答
816 浏览

c++ - 当用户名错误时,为什么 GetErrorMessage 返回“错误密码”?

GetErrorMessage(来自 CInternetException)给了我以下信息:

使用不正确的 ftp 服务器名称:
“错误!无法解析服务器名称或地址”

使用不正确的密码:
ERROR!密码不被允许

使用不正确的用户名:
错误! 密码不被允许 <-----? 不正确的用户名没有单独的消息?这是故意的吗?

0 投票
2 回答
340 浏览

c++ - 当用户名错误时,为什么 GetLastError() (NOT GetReturnMessage) 返回“密码错误”?

可能重复:
当用户名错误时,为什么 GetErrorMessage 返回“错误密码”?

由于GetErrorMessage为无效密码和用户名提供了相同的字符串,因此我决定使用 GetLastError(),因为它对每个都有单独的错误。

但是,如果用户名不正确,它仍然会给我代码 12014?(密码错误)但有一个单独的错误代码:ERROR_INTERNET_INCORRECT_USER_NAME - 12013

这不应该工作还是这也是有意的?

谢谢。

0 投票
1 回答
1300 浏览

c++ - 为什么 GetLastError() 在调试与“正常”执行期间返回不同的代码?

当此代码使用故意不正确的用户名从 Visual Studio 运行时,GetLastError() 返回 12014(预期)。

但是,当从命令行运行相同的代码时(使用完全相同的错误用户名)GetLastError() 返回 2?(GetErrorMessage()确实返回了错误的密码)

我不明白有什么区别。

此外,我从命令行运行程序,同时在 Visual Studio 中将进程附加到它以进行调试。我收到了 12014。

每当涉及调试器时,我都会得到 12014。当我使用相同的参数“正常”运行可执行文件时,我会得到 2。

在调试器之外运行程序时是否找不到 WinInet 错误代码?我需要以不同的方式编译程序吗?

任何帮助表示赞赏。谢谢你。

0 投票
3 回答
3776 浏览

delphi - 如何在调用 Web 服务期间阻止对话框(基本身份验证提示)

在一个 delphi 程序(作为服务运行)中,我需要调用一些 web 服务。
如果不需要基本身份验证,则调用工作正常。如果需要基本身份验证并使用以下方法提供用户名/密码(在 BeforePost 中),这些调用也可以正常工作:

但是,如果要求基本身份验证,并且未提供用户名/密码,则程序会提示输入用户名/密码(这是服务中的 NO-GO)。

那么我怎样才能表示我不想要提示,而是要一个错误呢?

问题是,我可以看到,在 SOAPHTTPTrans 函数 THTTPReqResp.Send(const ASrc: TStream): Integer; (第 762 行(第二次调用 InternetErrorDlg 我该方法))。

EDIT1:
如果我将发送方法开头的标志(在 SOAPHTTPTRANS 中)更改为包括 INTERNET_FLAG_NO_AUTH,它会按我的意愿工作。
但是如何在不更改 SAOPHTTPTrans(如果可能)的情况下做到这一点?

编辑2:

其中AvailabilityServiceSoap 是使用WSDL 导入器生成的接口。