客户打开网页 有图片链接 点击 则会在ie中打开
现在我要做的是在客户的photoshop中打开
ps不能打开服务器上的图片 我只能先把图片下载到客户机上
 
下载到客户机 我想到了两种解决办法第一种思路:<html>
<head>
<title></title>
<script language="javascript">
function ss(){
var xmlhttp = new ActiveXObject("Microsoft.XMLHTTP"); 
var adodbStream=new ActiveXObject("ADODB.Stream"); 
xmlhttp.open("GET","http://image2.sina.com.cn/home/07index/sinahome_ws_009.gif",false); 
xmlhttp.send();
adodbStream.Type=1;
adodbStream.write(xmlhttp.responseBody); 
adodbStream.saveToFile("e:\\abc.gif"); //行:16
adodbStream.close();
}
</script>
</head><body>
<input type=button onclick="ss()" value="go">
</body>
</html> 提示错误
行:16
字符:3
代码:0
错误:此计算机上的安全设置禁止访问其它域的数据源。可我已经启动“对没有标记为安全的activex控件进行初始化和脚本运行”
还有启动了“通过域访问数据资料”
我用alert(xmlhttp.responseBody)测试发现输出乱码 应该是成功读入数据了 就是SaveToFile哪里不对 我自己测试用ADODB.Stream writeText写个文本文件也SaveToFile不了 提示错误同样是“错误:此计算机上的安全设置禁止访问其它域的数据源。”第一种思路没有搞定 于是第二种思路:
用photoshop打开Temporary Internet Files缓存的那张图片 可是一直提示找不到该图片 我估计可以是Temporary Internet Files文件夹的特殊性 不让打开 于是我写了下面js 试图把该图片拷贝到其他目录 可还是提示找不到图片
function copyfile()   
{   
  var fso   =  new  ActiveXObject("Scripting.FileSystemObject");   
  var picURL = "C:\\Documents and Settings\\tangyd\\Local Settings\\Temporary Internet Files\\spot.jpg";
  alert(picURL);
  var   f   =  fso.GetFile(picURL);  
  f.Copy("G:\\spot.jpg"); 
}知道这里很多js高手 请大家帮帮我吧 谢谢了

解决方案 »

  1.   

    那你唯一的办法是在客户机上的文件夹属性中改变文件关联到photoshop并且打开不提示
    靠网页程序是根本无法解决问题的
    你想想也知道,要是光靠网页程序就能指定用户用什么程序打开,那这个网络还有什么安全性???
      

  2.   

    对客户端的ADODB.Stream不太了解,看来问题是图片还没保存到客户的机子上,等高手出现吧。
      

  3.   

    卡巴斯基反病毒软件 7.0
    The requested URL http://topic.csdn.net/u/20070519/23/2e3b57cc-68df-4725-b419-5178ddeccf24.html is infected with Trojan-Downloader.JS.gen virus
    ==========================================================
    你看看上面什么,今天一不小心打开了卡巴,就看到这个
    足以说明我在4楼所说的正确性了吧?我再次说明这个观点:你的程序一丁点问题都没有,完全是正确的
    但是你有没有想过,如果像这样没有任何提示的把文件下载到客户机,是多么危险的事
    你是用来下载图片,但别人用来下载木马呢?
    而且按照道理网页是不允许在硬盘上进行读写的
    所以微软发布补丁把这个行为作为高风险漏洞禁止了如果你想办到也不是没有办法,那就要你自己写一个Active-X控件
    让客户机在第一次访问这个网页时候安装它
    然后你就可以通过这个控件来访问硬盘了
      

  4.   

    卡巴斯基反病毒软件 7.0
    The requested URL http://topic.csdn.net/u/20070519/23/2e3b57cc-68df-4725-b419-5178ddeccf24.html is infected with Trojan-Downloader.JS.gen virus
    ==========================================================
    你看看上面什么,今天一不小心打开了卡巴,就看到这个
    足以说明我在4楼所说的正确性了吧?我再次说明这个观点:你的程序一丁点问题都没有,完全是正确的
    但是你有没有想过,如果像这样没有任何提示的把文件下载到客户机,是多么危险的事
    你是用来下载图片,但别人用来下载木马呢?
    而且按照道理网页是不允许在硬盘上进行读写的
    所以微软发布补丁把这个行为作为高风险漏洞禁止了如果你想办到也不是没有办法,那就要你自己写一个Active-X控件
    让客户机在第一次访问这个网页时候安装它
    然后你就可以通过这个控件来访问硬盘了
      

  5.   

    不知道ie还可以做这个,我常识了一下不行估计是我的打补丁了,看来ie是不如ff安全以后还是少用的好