var Shell = new ActiveXObject( "Shell.Application" );没有权限的问题

fancy0529 2011-07-11 09:54:30
function BrowseFolder(){
try{
var Message = "请选择文件夹"; //选择框提示信息
var Shell = new ActiveXObject( "Shell.Application" );
var Folder = Shell.BrowseForFolder(0,Message,0x0040,0x11);//起始目录为:我的电脑
//var Folder = Shell.BrowseForFolder(0,Message,0); //起始目录为:桌面
if(Folder != null){
Folder = Folder.items(); // 返回 FolderItems 对象
Folder = Folder.item(); // 返回 Folderitem 对象
Folder = Folder.Path; // 返回路径
if(Folder.charAt(Folder.length-1) != "\\"){
Folder = Folder + "\\";
}
document.all.savePath.value=Folder;
return Folder;
}
}catch(e){
alert(e.message);
}
}

* 特别注意的是,由于安全方面的问题,你还需要如下设置才能使本JS代码正确运行,
* 否者会出现"没有权限"的问题.
*
* 1、设置可信任站点(例如本地的可以为:http://localhost)
* 2、其次:可信任站点安全级别自定义设置中:设置下面的选项
* "对没有标记为安全的ActiveX控件进行初始化和脚本运行"----"启用"
*/

我把1、2都设置了,可是还是提示:没有权限。
...全文
925 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
fancy0529 2011-07-11
  • 打赏
  • 举报
回复
网上说
你在IE选项里设置---安全---自定义级别---将ActiveX控件和插件前3个选项设置为启用即可
可是我还是实现不了。说没有权限
fancy0529 2011-07-11
  • 打赏
  • 举报
回复
我是想把服务器的文件下载到电脑中,并选择一个保存路径。有其它办法实现吗?
humanity 2011-07-11
  • 打赏
  • 举报
回复
File 这种 input 组件是禁止通过脚本来填充值的,仅允许响应键盘和鼠标事件。也就是说,为了安全起见,只有由用户明确发起请求的情况下才允许更改一个文件上传组件 (File 组件) 的值。

如果你想通过脚本读取别人的磁盘是不现实的,这和病毒是同样的原理。

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧