繁体   English   中英

Windows注册表或IE中的受信任脚本设置

[英]Trusted Scripts Setting in Windows Registry or IE

我正在为内部网站创建文件目录。 用户将访问该页面并插入位置和文件名,并将信息提交到数据库。 我尝试使用文件上载打开Windows资源管理器,以便用户可以找到文件和路径。 但是,asp文件上传不会允许我在客户端捕获路径。 由于这是一个内部网站,Internet Explorer或Windows Registry是否具有类似于受信任站点的受信任脚本的权限设置?

我创建了一个JQuery脚本,将路径复制到文本框,但是收到一条错误消息,内容为“ C:\\ fakepath \\ test.pdf”。 test.pdf是文件名,但c:\\ fakepath不是路径。 我尝试了多个服务器变量,但这些变量只告诉服务器端的路径。

    <script>
        $(document).ready(function(){
        $("#button").click(function(){
         $("#text1").val($("#text").val());
         });
         });
 </script>
 <input type="file" id="text" />
 <input type="text" id="text1" />
 <input type="button" value="Click Me!" id="button" />

要访问本地路径,您需要在网页中使用ActiveX对象。 它可以帮助您获取IE中的路径。

为了使用文件和目录,应将服务器对象作为Scripting.FileSystemObject,然后使用GetDirectory()方法可以获取目录对象。

样例代码:

 var Fo =new ActiveXObject("Scripting.FileSystemObject"); var StrOut = new String(); var FileName = new String(); var Extention = new String(); function FindFile(FOo) { var FSo = new Enumerator(FOo.Files); for(i=0;!FSo.atEnd();FSo.moveNext()) { if(FileName == "*" || FSo.item().name.slice(0,FSo.item().name.lastIndexOf(".")).toLowerCase().indexOf(FileName)>-1) if(Extention == "*" || FSo.item().name.slice(FSo.item().name.lastIndexOf(".")+1).toLowerCase().indexOf(Extention)>-1){ StrOut += "<tr "+ ((i%2)? "":"bgcolor=#DDAA55") +"><td width=50%><font class=find>" + FSo.item().path + "</font></td><td width=25%><font class=find>" + FSo.item().type + "</font></td><td width=50%><font class=find>"+ String(FSo.item().size/(1024*1024)).slice(0,3) +" MB</font></td></tr>"; i++ } } } function Scan() { FileName = (search.value.lastIndexOf(".")>-1)? search.value.slice(0,search.value.lastIndexOf(".")):(search.value.length>0)? search.value.toLowerCase():"*"; //Get Searched File Name Extention = (search.value.lastIndexOf(".")>-1)? search.value.slice(search.value.lastIndexOf(".")+1).toLowerCase():"*"; // Get Searched File Extention Name if(path.value.length>0 && Fo.FolderExists(path.value)){ StrOut = "<table border=0 width=100% cellspacing=0>" FindFile(Fo.GetFolder(path.value)); outPut.innerHTML = StrOut+"</table>"; } else alert("Insert Correct Path Address"); } 

有关详细信息和示例代码,您可以参考下面的链接并下载示例文件。

使用JavaScript查找文件

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM