[已解决]使用 winhttp.winhttprequest.5.1 出现乱码
本帖最后由 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更不靠谱
求达人 回复 1# jamer
楼主真麻烦#include <INet.au3>
$LrcId = 145863
$url = "http://box.zhangmen.baidu.com/bdlrc/" &Int($LrcId/100) & "/" & $LrcId& ".lrc"
MsgBox(0,"",_INetGetSource ( $URL )) 本帖最后由 jamer 于 2011-12-11 16:54 编辑
回复 2# tsys
我也知道_INetGetSource或者帮助里的其他函数
但是不知道是网速还是什么问题
这个函数在我的电脑上就没有成功返回过值
我提供的那个是经过我检验可以返回正确数值的(只是可惜是乱码)
如果有新的函数的请提供,或者就是按照我要求的框架解决吧 本帖最后由 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) 本帖最后由 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 完成: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 完成::1
+>18:20:29 ACNWrapper 完成..
>退出代码: 1 运行时间: 23.558 秒
我是试了不少函数,其他的都不给力啊
'microsoft.xmlhttp'这个我之前也是试过的,就是得不到结果,上面就是输出框的显示
真的不是我不争气啊。知道错了不知道错哪~~ 本帖最后由 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 大大 的帮助~~
页:
[1]