找回密码
 加入
搜索
查看: 6511|回复: 5

[系统综合] [已解决]使用 winhttp.winhttprequest.5.1 出现乱码

[复制链接]
发表于 2011-12-11 16:15:00 | 显示全部楼层 |阅读模式
本帖最后由 jamer 于 2011-12-11 18:38 编辑


        $LrcId = 145863
        $url = "http://box.zhangmen.baidu.com/bdlrc/" &  Int($LrcId/100) & "/" & $LrcId  & ".lrc"
        $oHTTP = ObjCreate("winhttp.winhttprequest.5.1")
        $oHTTP.Open("GET",$url)
        $oHTTP.Send()
        $Source = $oHTTP.Responsetext        
        $oHTTP = ""        
        MsgBox(0,0,$Source)

出现乱码,该怎么处理啊
stringfromBinary不行
BinaryToString所有参数也是不行
把Responsetext改成Responsebody更不靠谱
求达人
发表于 2011-12-11 16:26:40 | 显示全部楼层
回复 1# jamer


    楼主真麻烦
#include <INet.au3>
$LrcId = 145863
        $url = "http://box.zhangmen.baidu.com/bdlrc/" &  Int($LrcId/100) & "/" & $LrcId  & ".lrc"
                MsgBox(0,"",_INetGetSource ( $URL ))
 楼主| 发表于 2011-12-11 16:52:27 | 显示全部楼层
本帖最后由 jamer 于 2011-12-11 16:54 编辑

回复 2# tsys
我也知道_INetGetSource或者帮助里的其他函数
但是不知道是网速还是什么问题
这个函数在我的电脑上就没有成功返回过值
我提供的那个是经过我检验可以返回正确数值的(只是可惜是乱码)

如果有新的函数的请提供,或者就是按照我要求的框架解决吧
发表于 2011-12-11 17:50:57 | 显示全部楼层
本帖最后由 tsys 于 2011-12-11 17:53 编辑

回复 3# jamer


    楼主看此帖,传送门:http://www.autoitx.com/forum.php?mod=viewthread&tid=21014
    参考:http://tieba.baidu.com/f?kz=912178384
$LrcId = 145863
        $url = "http://box.zhangmen.baidu.com/bdlrc/" &  Int($LrcId/100) & "/" & $LrcId  & ".lrc"
        $oHTTP = ObjCreate('microsoft.xmlhttp')
        $oHTTP.Open("GET",$url,False)
        $oHTTP.Send()
        $sText = BinaryToString($oHTTP.responseBody)  
        MsgBox(0,0,$sText)

评分

参与人数 1金钱 +20 收起 理由
afan + 20

查看全部评分

 楼主| 发表于 2011-12-11 18:27:01 | 显示全部楼层
本帖最后由 jamer 于 2011-12-11 18:28 编辑

回复 4# tsys
>"D:\ProLan\AutoIt\SciTe\ACNWrapper\ACNWrapper.exe" /run /ErrorStdOut /in "C:\Documents and Settings\Administrator\桌面\soft\test2.au3" /autoit3dir "D:\ProLan\AutoIt" /UserParams    
+>18:20:06 开始执行 ACNWrapper v.1.0.1.0
+> ============================================
+>执行环境:
+>        CPU构架:        X64
+>        系统构架:        X86
+>        系统语言:        0804
+>        键盘布局:        E0200804
+>        内存总量:        1013MB
+>        内存剩余:        118MB
+>        操作系统:        WIN_XP/Service Pack 3
+>        AU3版本:        3.3.7.15
+> ============================================
>运行 AU3Check (1.54.21.0)  开始目录:D:\ProLan\AutoIt
+>18:20:06 AU3Check 完成[CODE]:0
>运行:(3.3.7.15):D:\ProLan\AutoIt\autoit3.exe "C:\Documents and Settings\Administrator\桌面\soft\test2.au3"    
C:\Documents and Settings\Administrator\??\soft\test2.au3 (5) : ==> ??????(?????).:
$oHTTP.Send()
$oHTTP.Send()^ ERROR
->18:20:28 AutoIT3.exe 完成:[CODE]:1
+>18:20:29 ACNWrapper 完成..
>退出代码: 1        运行时间: 23.558 秒
我是试了不少函数,其他的都不给力啊
'microsoft.xmlhttp'这个我之前也是试过的,就是得不到结果,上面就是输出框的显示
真的不是我不争气啊。知道错了不知道错哪~~
 楼主| 发表于 2011-12-11 18:38:39 | 显示全部楼层
本帖最后由 jamer 于 2011-12-11 18:40 编辑

        $LrcId = 145863
        $url = "http://box.zhangmen.baidu.com/bdlrc/" &  Int($LrcId/100) & "/" & $LrcId  & ".lrc"
        $oHTTP = ObjCreate("winhttp.winhttprequest.5.1")
        $oHTTP.Open("GET",$url)
        $oHTTP.Send()
        $Source =  BinaryToString($oHTTP.responseBody) 
        $oHTTP = ""        
        MsgBox(0,0,$Source)

原来这样就可以了。。
其他的方式不知道为什么在自己电脑上不能用。。先慢慢研究了。
多谢 tsys 大大 的帮助~~
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-10-1 05:38 , Processed in 0.082745 second(s), 20 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表