JS调用activeX实现浏览本地文件夹功能

研究了一天,js访问本地文件本身是不可能的,只能借助于插件。植入正题,IE仅支持ActiveX插件。

   function openDialog() {
        try {
            var Message = "请选择文件夹"; //选择框提示信息
            var Shell = new ActiveXObject("Shell.Application");
            var Folder = Shell.BrowseForFolder(0, Message, 0x0040, 0x11); //起始目录为:我的电脑

            if (Folder != null) {
                Folder = Folder.items();
                Folder = Folder.item();
                Folder = Folder.Path;
                if (Folder.charAt(Folder.length - 1) != "\\") {
                    Folder = Folder + "\\";
                }

                document.getElementById("inputPath").value = Folder;//获取地址填入文本框中
                return Folder;
            }
        }
        catch (e) {
            alert(e.message);
        }
    }

  相应的点击事件调用即可。

一般都会出现没有权限的错误。设置IE安全,把你的网站添加到可信任区域,然后修改可信任区域的安全限制,把有关activeX的都启用,就会成功,显示文件浏览对话框

闲的时候可以学习一下,非ie如何调用activeX,非ie的都是基于NPAPI来扩展。小人刚刚接触web开发,记录一下。

时间: 2025-01-10 17:20:19

JS调用activeX实现浏览本地文件夹功能的相关文章

java+js实现展示本地文件夹下的所有图片demo

java+js实现展示本地文件夹下的所有图片demo 最近项目遇到需要实现前端通过一个按钮点击事件,弹窗浏览本地文件夹下的所有图片: 思路: - 获取到所需展示图片的本地文件夹内所有图片的文件绝对路径名称(路径+图片名称.格式名称) - 由于图片过大,对图片进行按比例压缩再展示 - 在前端展示图片 - (前端各式各样的展示--) 第一步:获取本地文件夹中的所有图片路径 java代码: package com.giscafer.common; import java.io.File; import

js调用可执行性(exe)文件(仅IE可用)

jQuery: $(function(){ $('#exsp').click(function(exe){ exe.value=$('.exsp').attr('val'); try   { var   objShell   =   new   ActiveXObject("wscript.shell"); objShell.Run($('.exsp').attr('val')); objShell   =   null; } catch (exe){ alert('找不到文件&quo

windows映射到本地文件夹中,打开程序

windows映射到本地文件夹中,打开程序,是在调用本地程序执行,如果不能删除或修改,是本地程序占用,关闭本地程序即可 实例: 在ubuntu上映射出来的一个文件夹,直接双击了jar文件,实质是调用本地的Java(TM) Platform SE binary程序,找到本地进程javaw,结束掉即可,跟远程 程序 操作 进程无关

atitit. web 在线文件管理器最佳实践(1)--- elFinder 的使用流程解决之道 。打开浏览服务器文件夹java .net php

atitit. web 在线文件管理器最佳实践(1)--- elFinder 的使用流程解决之道 .打开浏览服务器文件夹java .net php 1. 环境:::项目java web,需要打开浏览服务器文件夹挑选文件,在返回... 1 2. 在线文件管理器要实现的基本的功能::指定开始目录,指定getfile回调 1 3. 组件选型:: elFinder (3M) ,,php web ftp 1 4. elFinder 的概念 1 5. elFinder  1.x 的使用过程 2 6. elF

git中使用命令将远程仓库拉取项目在本地文件夹

在有些时候,我们往往从github或者gitlab或者coding上面直接下载项目下来运行,但是这种情况往往没有使用git远程拉取来的安全(或者叫装逼), 所以这里我以gitLab为例子,说一下如何将远程服务器上的代码拉取到本地   首先,你得安装好git的软件 可以从网上获取 安装教程点击链接:git安装教程 安装好后,打开你的远程仓库的网站,当然你得发现你的项目组或者找到开源项目的东东 比如我的 gitlab: 然后随便打开一个项目,复制SSH链接:   接下来就可以开始在黑框里面搞了: 打

解决无法更改本地文件夹与 TFS 项目之间映射的问题

问 题说明:更换了一台新的 TFS 服务器,旧的 TFS 服务器停止使用.但从客户端 VS2008 连接到新的服务器,并下载源码到本地原来工作的文件夹时,出现错误提示,说本地文件夹已被映射到了旧的服务器上,不能从新服务器获取源码.通过源代码管理 -工作区管理,把跟旧服务器相关的所有工作区项都删掉后,仍出现此提示. 解决办法:在文件 C:\Documents and Settings\当前用户\Local Settings\Application Data\Microsoft\Team Found

outlook2010设置本地文件夹

最近在把outlook从2007升级到了2010,但一般WEB邮箱容量很小,得将邮件接收到本地,而outlook2010和outlook2007在设置为接收到本地的方法极不相同,如果按照以前2007的方式设置你会发现根本不能接收到本地. 工具/原料 outlook2010 ?邮箱帐号 方法/步骤 从开始菜单中启动outlook2010:   单击“文件”菜单,选择“信息”,再单击“帐户设置”按钮,选择“帐户设置”选项:   再在弹出对话框中单击“更改文件夹”:   在弹出的“邮件传送位置”中直接

outlook邮箱邮件与企业邮箱同步(outlook本地文件夹邮件,web邮箱里没有)

用惯了outlook2010, 问题:今天将邮件放到自定义文件夹后,发现在web邮箱中看不到邮件了.不能同步到企业邮箱. 解决忙了一天,才知道是账户类型问题,pop3类型,只下载不上传.所以outlook本地修改后,web邮箱看不到.创建账户类型imap,才能将本地文件夹邮件上传到邮箱服务器.创建imap新账户,然后将老账户中的本地文件夹直接拖动到新用户下,然后选择"发送/接受"下的"所有用户组"(单选imap类型用户也行),或者关闭outlook,自动将邮件上传到

如何从TFS(Visual Studio Team Foundation Server)映射下载本地文件夹

1.连接tfs项目 首先打开vs2017 -->工具栏 中的   团队--> 选择团队的管理链接 2.选择管理工作区 显示管理工作区的弹窗,点击 编辑  显示弹窗,选择本地文件夹(即要保存本地文件夹的路径),点击确定即可. 3.设置工作区的本地映射文件夹 原文地址:https://www.cnblogs.com/1175429393wljblog/p/8478471.html