标题:下载的网站有证书,请问这句URL_SESSION = INTERNETOPENURL(URL_OPEN,INTER ...
取消只看楼主
sych
Rank: 3Rank: 3
等 级:论坛游侠
威 望:6
帖 子:179
专家分:183
注 册:2019-10-11
结帖率:100%
已结贴  问题点数:20 回复次数:2 
下载的网站有证书,请问这句URL_SESSION = INTERNETOPENURL(URL_OPEN,INTER_URL,"",2,16,
cRemoteFile = "https://inv-veri.chinatax.
cLocalFile="增值税电子发票阅读器.zip"
URL_DOWNFILE(cRemoteFile,cLocalFile)
retu

FUNCTION URL_DOWNFILE
LPARAMETERS INTER_URL,LOCALFILE
DECLARE INTEGER InternetOpen IN wininet STRING, INTEGER, STRING, STRING, STRING
DECLARE INTEGER InternetOpenUrl IN wininet INTEGER, STRING, STRING, INTEGER, INTEGER, INTEGER
DECLARE INTEGER HttpQueryInfo IN wininet INTEGER, INTEGER, STRING @, INTEGER @, INTEGER @
DECLARE INTEGER InternetReadFile IN wininet INTEGER, STRING @, INTEGER, INTEGER @
DECLARE INTEGER InternetCloseHandle IN wininet INTEGER
URL_OPEN = INTERNETOPEN("qm3d",1,CHR(0),CHR(0),0)
IF URL_OPEN = 0
    RETURN -1
ENDIF
URL_SESSION = INTERNETOPENURL(URL_OPEN,INTER_URL,"",2,16,0)
IF URL_SESSION = 0
    = INTERNETCLOSEHANDLE(URL_OPEN)
    RETURN -2
ENDIF
URL_FOPEN = FCREATE(LOCALFILE)
IF URL_FOPEN = -1
    = INTERNETCLOSEHANDLE(URL_SESSION)
    = INTERNETCLOSEHANDLE(URL_OPEN)
    RETURN -3
ENDIF
URL_QUERYINFO = SPACE(32)
URL_QUERYINFOLEN = LEN(URL_QUERYINFO)
IF HTTPQUERYINFO(URL_SESSION,5,@URL_QUERYINFO,@URL_QUERYINFOLEN,0) = 1
    URL_FILESIZE = VAL(LEFT(URL_QUERYINFO,URL_QUERYINFOLEN))
ELSE
    URL_FILESIZE = -1
ENDIF
URL_SIZESUM = 0
URL_READBUFFER = REPLICATE(CHR(0),4096)
DO WHILE .T.
    URL_READBYE = 0
    IF INTERNETREADFILE(URL_SESSION,@URL_READBUFFER,4096,@URL_READBYE) = 1
        IF URL_READBYE = 0
            EXIT
        ELSE
            = FWRITE(URL_FOPEN,URL_READBUFFER,URL_READBYE)
        ENDIF
        URL_SIZESUM = URL_SIZESUM+URL_READBYE
        IF URL_FILESIZE = -1
            IF URL_SIZESUM > 0001048576
                WAIT WINDOW NOWAIT "正在下载 "+ALLTRIM(STR(URL_SIZESUM/0001048576,10,3))+"M……" AT sROWS()/2,SCOLS()/2-30
            ELSE
                WAIT WINDOW NOWAIT "正在下载 "+ALLTRIM(STR(URL_SIZESUM/1024))+"K……" AT sROWS()/2,SCOLS()/2-30
            ENDIF
        ELSE
            IF URL_SIZESUM > 0001048576
                WAIT WINDOW NOWAIT "正在下载 "+ALLTRIM(STR(URL_SIZESUM/0001048576,10,3))+"M "+STR(URL_SIZESUM/URL_FILESIZE*100,6,2)+"%……" AT sROWS()/2,SCOLS()/2-30
            ELSE
                WAIT WINDOW NOWAIT "正在下载 "+ALLTRIM(STR(URL_SIZESUM/1024))+"K "+STR(URL_SIZESUM/URL_FILESIZE*100,6,2)+"%……" AT sROWS()/2,SCOLS()/2-30
            ENDIF
        ENDIF
    ELSE
        EXIT
    ENDIF
ENDDO
WAIT CLEAR
= FCLOSE(URL_FOPEN)
= INTERNETCLOSEHANDLE(URL_SESSION)
= INTERNETCLOSEHANDLE(URL_OPEN)
RETURN URL_SIZESUM
ENDFUNC
搜索更多相关主题的帖子: INTEGER STRING IF wininet STR 
2021-04-25 14:13
sych
Rank: 3Rank: 3
等 级:论坛游侠
威 望:6
帖 子:179
专家分:183
注 册:2019-10-11
得分:0 
URL_SESSION = INTERNETOPENURL(URL_OPEN,INTER_URL,"",2,16,0)
这句出错不知道该如何修改?
2021-04-25 14:15
sych
Rank: 3Rank: 3
等 级:论坛游侠
威 望:6
帖 子:179
专家分:183
注 册:2019-10-11
得分:0 
就是证书的问题,但网上很多人也遇到过这个问题,也有解决方案,我试着改成vfp的,但都没有成功
2021-04-26 09:10



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-505571-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 1.777288 second(s), 8 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved