我正在尝试从 http: 服务器下载二进制文件。我正在使用函数 InternetOpenUrl()
然后使用 InternetReadFile()
下载文件。是否可以在下载前知道文件名?
我现在获取文件名的方法是 - 下载完成后,使用 GetFileVersionInfo()
并从缓冲区获取 OrginalFilename,然后将文件重命名为 OrginalFilename。
有没有其他方法可以在下载前获取文件名?
谢谢
红酒
最佳答案
查看 HttpQueryInfo
。查看 Content-Type
和 Content-Disposition
header 。
如果它只是返回,您可能必须使用 HTTP_QUERY_CUSTOM
来获取原始内容类型,例如“文本/纯文本”。
要获取所有 header (从而确定哪个 header 包含您想要的信息),您可以使用 HTTP_QUERY_RAW_HEADERS_CRLF
。
关于c++ - 下载文件前如何获取文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19052117/