frequent 2024-12-13 11:36 采纳率: 20%
浏览 49
已结题

使用CInternetSession,CHttpFile读取网页文件时有些电脑上会卡住怎么办?

我用以下代码来读取网络文件上的内容,大部分电脑上正常,但部份电脑上会卡住,该怎么解决呢?
代码如下:

CInternetSession Sess;
CHttpFile* cFile;
cFile= (CHttpFile*)Sess.OpenURL("http://www.xxx.com/abc.txt",1,INTERNET_FLAG_TRANSFER_ASCII | INTERNET_FLAG_RELOAD,NULL,0);
DWORD dwStatusCode;
cFile->QueryInfoStatusCode(dwStatusCode);
if(dwStatusCode == HTTP_STATUS_OK)
{
    CString szData;
    cFile->ReadString(szData);
    cFile->Close();
    Sess.Close();
    return szData;
}
else
{
    return "";
}

但如果我进入这些有问题的电脑上的控制面板,Internet选项中,再在高级选项卡下,将“检查服务器证书是否已吊销”前面的勾去掉并点击确定,然后就不会卡住了,请问这个问题怎么解决呢?因为我不想进入控制面板中去做这个设置。

  • 写回答

33条回答 默认 最新

  • 专家-赤兔[在线] 全栈领域优质创作者 2024-12-13 11:36
    关注
    获得0.30元问题酬金

    以下回复引自免费微信小程序:皆我百晓生。 如问题解决,还请采纳。如仍有疑问,请回复留言或私信博主,以便获得更精准的帮助。

    如何解决在某些电脑上访问网页文件卡住的问题?

    首先,确保你的CINTERNETSESSION和CHTTPFILE对象已正确建立。然后,在程序中尝试读取文件的内容,并检查是否有任何错误或异常发生。

    // 初始化INTERNETSESSION
    SESS = CINTERNETSESSION::CREATE();
    IF (!SESS) {
        // 如果无法初始化,可能是因为INTERNETSESSION没有被创建或者没有正确设置。
    }
    
    // 创建HTTP请求对象
    CFILE = (CHTTPFILE*)SESS->OPENURL("HTTP://EXAMPLE.COM/PATH/TO/FILE.HTML", HTTP_GET);
    IF (CFILE == NULL) {
        // 如果请求失败,则显示错误信息并退出程序。
        RETURN -1;
    }
    
    // 读取文件内容
    CHAR CONTENT[2048];
    INT BYTES_READ = CFILE->READALL(CONTENT, SIZEOF(CONTENT));
    IF (BYTES_READ < 0) {
        // 如果读取失败,显示错误信息并退出程序。
        RETURN -1;
    }
    
    // 打印读取到的文件内容
    PRINTF("THE FILE CONTENT IS: %S\N", CONTENT);
    
    // 关闭HTTP请求对象
    CFILE->CLOSE();
    

    在这个例子中,我们首先创建了一个CINTERNETSESSION实例,然后创建了一个HTTP请求对象CFILE,用于从指定URL下载文件内容。如果请求成功,我们将文件内容写入一个字符数组CONTENT中。然后,我们读取这个字符数组中的所有内容,并将结果打印出来。最后,我们关闭了HTTP请求对象CFILE

    如果你在处理这类问题时遇到问题,可以尝试使用更具体的示例或者查阅相关的编程文档以获取最佳解决方案。

    评论

报告相同问题?

问题事件

  • 系统已结题 12月21日
  • 创建了问题 12月13日

悬赏问题

  • ¥15 宇视监控服务器无法登录
  • ¥15 PADS Logic 原理图
  • ¥15 PADS Logic 图标
  • ¥15 电脑和power bi环境都是英文如何将日期层次结构转换成英文
  • ¥15 DruidDataSource一直closing
  • ¥20 气象站点数据求取中~
  • ¥15 如何获取APP内弹出的网址链接
  • ¥15 wifi 图标不见了 不知道怎么办 上不了网 变成小地球了
  • ¥50 STM32单片机传感器读取错误
  • ¥50 power BI 从Mysql服务器导入数据,但连接进去后显示表无数据