如何从原生 Windows 应用程序访问网站?

问题描述

我希望这是一个简单的问题。

使用 .NET,我可以简单地访问网站:

WebClient wc = new WebClient();
wc.Credentials = new NetworkCredential("myUserName","Password123");
string fileContent = wc.DownloadString("https://example.com/example.txt");

不幸的是,我正在处理一个本地 64 位 DLL 文件,该文件在另一个程序中用作插件

所以我没有机会使用 .NET,但我只能使用本机 64 位 Windows DLL。

是否有与上述代码相同的本地 Windows API?

我在互联网上搜索过,但一无所获。

解决方法

我自己找到了答案:

“wininet.dll”的功能就是解决办法:

函数InternetOpen()或多或少对应于new WebClient()

下载数据有点复杂;不同的协议(HTTP、FTP...)没有统一的API,但是每种协议类型使用的功能不同。

要通过 HTTP 或 HTTPS 下载 (GET) 或发送 (POST) 数据,API InternetCrackUrl()InternetConnect()HttpSendRequest() 和 {{3 }} 被使用。

(注意:在 Microsoft 网站文档中,函数声明显示为 void InternetOpen(...),尽管文档说函数返回类型为 HINTERNET 的值。HINTERNET 是正确的,void 是错误的。)