[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖
本帖最后由 447219071 于 2015-10-25 23:57 编辑

回复 16# CrLf
这样不是办法
防盗链是为了原创而进行的保护,必不可少的
能否在官方tool.js上做下完善解决这种情况?

TOP

和代码无关,只是在七牛云的空间里关了防盗链而已

TOP

回复 14# CrLf


    果然可以了,难道是你的这个代码起作用了?
  1. <!-- :
  2. @mshta "%~f0" | more & pause
  3. -->
  4. <script src="http://www.bathome.net/lib/diy/WSH.js"></script>
  5. <script>
  6. var host = 'http://batch-cn.qiniudn.com/'
  7. var ar = getText(host+'list/tool.txt')
  8. var ar = getText(host+'list/tool.@version.txt')
  9. function getText(strUrl){
  10. WSH.Echo('网址为'+strUrl+'?'+Math.random())
  11. try{
  12. var http = new ActiveXObject("Msxml2.ServerXMLHTTP")
  13. WSH.Echo('http:'+typeof http)
  14. http.open("GET",strUrl+'?'+Math.random(),false)
  15. http.send()
  16. WSH.Echo('status='+http.status)
  17. if(http.status>=400)return
  18. var stream = new ActiveXObject("ADODB.Stream")
  19. stream.Type = 1
  20. stream.Mode = 3
  21. stream.open()
  22. stream.write(http.responseBody)
  23. WSH.Echo('Size='+stream.Size)
  24. stream.Position = 0
  25. stream.Type = 2
  26. stream.CharSet = 'gb2312'
  27. return stream.ReadText
  28. }
  29. catch(Err){WSH.Echo(Err.message)}
  30. }
  31. close()
  32. </script>
复制代码
如果是这样,是不是还要配合这个先才能适合我的这个XP SP3系统?
请问怎么精简合成呢?》

TOP

回复 13# 447219071


    果然是防盗链的原因,现在你再试试顶楼代码应该可以运行了。你们那是什么环境,怎么会这么奇葩
    防盗链就暂时关闭着吧,回头发现恶意下载的情况再开启

TOP

回复 12# CrLf


    网址为http://batch-cn.qiniudn.com/list/tool.txt?0.6527020354398203
httpbject
status=200
size=41021
网址为http://batch-cn.qiniudn.com/list ... @0.5713456774284609
http:object
status=200
size=41668

TOP

回复 11# 447219071


    已关防盗链,现在试试看,要是还不行我也搞不懂什么原因了

TOP

回复 10# CrLf


    网址为http://batch-cn.qiniudn.com/list/tool.txt?0.6382176056701442
httpbject
status=403
网址为http://batch-cn.qiniudn.com/list ... 0.23986206796689885
http:object
status=403

TOP

回复 9# 447219071


    现在试试

TOP

回复 8# CrLf


    返回结果为:
返回结果为:
网址为http://batch-cn.qiniudn.com/list/tool.txt?0.7521945891672119
httpbject
status=403
网址为http://batch-cn.qiniudn.com/list ... ?0.4043633657653702
http:object
status=403

TOP

回复 7# 447219071


    我是问你回显是什么。。。。。。。

TOP

本帖最后由 447219071 于 2015-10-24 19:56 编辑

回复 4# CrLf


    我的系统是XP SP3的
刚试了这个,没有错误提示
返回结果为:
网址为http://batch-cn.qiniudn.com/list/tool.txt?0.7521945891672119
httpbect
staus=403
网址为http://batch-cn.qiniudn.com/list ... ?0.4043633657653702
http:obect
staus=403
  1. <!-- :
  2. @mshta "%~f0" | more & pause
  3. -->
  4. <script src="http://www.bathome.net/lib/diy/WSH.js"></script>
  5. <script>
  6. var host = 'http://batch-cn.qiniudn.com/'
  7. var ar = getText(host+'list/tool.txt')
  8. var ar = getText(host+'list/tool.@version.txt')
  9. function getText(strUrl){
  10. WSH.Echo('网址为'+strUrl+'?'+Math.random())
  11. try{
  12. var http = new ActiveXObject("Msxml2.ServerXMLHTTP")
  13. WSH.Echo('http:'+typeof http)
  14. http.open("GET",strUrl+'?'+Math.random(),false)
  15. http.send()
  16. WSH.Echo('status='+http.status)
  17. if(http.status>=400)return
  18. var stream = new ActiveXObject("ADODB.Stream")
  19. stream.Type = 1
  20. stream.Mode = 3
  21. stream.open()
  22. stream.write(http.responseBody)
  23. WSH.Echo('Size='+stream.Size)
  24. stream.Position = 0
  25. stream.Type = 2
  26. stream.CharSet = 'gb2312'
  27. return stream.ReadText
  28. }
  29. catch(Err){WSH.Echo(Err.message)}
  30. }
  31. close()
  32. </script>
复制代码
这个能配合下载wget.exe到本地c:\windows\syste32文件夹内么

TOP

本帖最后由 CrLf 于 2015-10-24 19:38 编辑

一种可能是 getText 得不到 tool.txt 的列表
另一种可能是你的 <script> 中包含 offline_Tools 属性,说明是离线使用,但运行时却无法在当前路径下找到 tool.txt

TOP

win7 x64 IE11  运行一楼代码正常。

TOP

本帖最后由 CrLf 于 2015-10-24 19:05 编辑

回复 3# 447219071


别截图,文字描述就好了,论坛空间宝贵,一张图顶一堆代码呢
试试这个,文字可以右键标记复制,或者自行重定向到文件再复制:
  1. <!-- :
  2. @mshta "%~f0" | more & pause
  3. -->
  4. <script src="http://www.bathome.net/lib/diy/WSH.js"></script>
  5. <script>
  6. var host = 'http://batch-cn.qiniudn.com/'
  7. var ar = getText(host+'list/tool.txt')
  8. var ar = getText(host+'list/tool.@version.txt')
  9. function getText(strUrl){
  10. WSH.Echo('网址为'+strUrl+'?'+Math.random())
  11. try{
  12. var http = new ActiveXObject("Msxml2.ServerXMLHTTP")
  13. WSH.Echo('http:'+typeof http)
  14. http.open("GET",strUrl+'?'+Math.random(),false)
  15. http.send()
  16. WSH.Echo('status='+http.status)
  17. if(http.status>=400)return
  18. var stream = new ActiveXObject("ADODB.Stream")
  19. stream.Type = 1
  20. stream.Mode = 3
  21. stream.open()
  22. stream.write(http.responseBody)
  23. WSH.Echo('Size='+stream.Size)
  24. stream.Position = 0
  25. stream.Type = 2
  26. stream.CharSet = 'gb2312'
  27. return stream.ReadText
  28. }
  29. catch(Err){WSH.Echo(Err.message)}
  30. }
  31. close()
  32. </script>
复制代码

TOP

回复 2# CrLf


   能直接读取这个TXT

TOP

返回列表