三种禁用FileSystemObject组件的方法
我整理了一下,本来只找到两种方法,后来被某人一刺激,硬是想到第三种不为人所知的方法,呵呵,也不知道是不是这样的。
第一种:用RegSrv32 /u C:\WINDOWS\SYSTEM\scrrun.dll(win98路径)来注销该组
件。此方法过于狠毒,属于同归于尽的方法,大家都没得用,是下招
第二种:修改Progid的值,在ASP里调用组件的方式通常是 Set 对象名=Server.
CreateObject("Progid"),这时候我们就可以通过修改注册表中的Progid值从达
到禁用该组件的方法。在 开始-运行中敲入regedit,然后找到HKEY_CLASSES_ROO
T\Scripting.FileSystemObject,这时候我们就可以更改该Progid的值了,如改
成Scripting.FileSystemObject8。这样在ASP页里就这样调用了:
<%@ Language=Vbscript%>
<%
Set Fs=Server.CreateObject("Scripting.FileSystemObject8")
%>
(如果你前面没有调用过该组件的话,则无须重启,就可以看到效果了,否则请重
启后看效果。)
这时候我们看看还是用原来的调用方法的结果:
<%@ Language=Vbscript%>
<%
Set Fs=Server.CreateObject("Scripting.FileSystemObject")
%>
这时候的运行结果为:
服务器对象 错误 'ASP 0177 : 800401f3'
Server.CreateObject 失败
/aspimage/testfile2.asp, 行3
800401f3
(OK,达到我们的要求)
该方法由于本人迟了两步,结果就让别人抢着回答了,这样极大的刺激了我,结
果就产生了第三种方法。
第三种:细心的高手们会想,既然能通过修改Progid值来禁用该组件,那Clsid是
否也可以来修改呢?(OK,你想得和我一样)我们知道,除了CreateObject方法以
外,也可以使用一般的<object>标注建立一个组件,我们可以在ASP里面使用HTM
L的<object>标注,以便在网页中加入一个组件。方法是:
<object runat=server id=fs1 scope=page progid="Scripting.FileSystemObj
ect"></object>
Runat表示是在服务端执行,Scope表示组件的生命周期,可以选用Session,Appl
ication或page(表示当前页面,也可缺省)
这种写法对我们没用,还有一种写法是:
<object runat=server id=fs1 scope=page classid="clsid:clsid的值"></obj
ect>
我们也可以通过修改该Clsid的值而禁用该组件,如将注册表中HKEY_CLASSES_RO
OT\Scripting.FileSystemObject\CLSID的值0D43FE01-F093-11CF-8940-00A0C90
54228改成0D43FE01-F093-11CF-8940-00A0C9054229(改了最后面一位),这时候的
写法为:
<object runat=server id=fs1 scope=page classid="clsid:0D43FE01-F093-11
CF-8940-00A0C9054229"></object>
看运行结果,没问题,OK。这时候我们再用
<object runat=server id=fs1 scope=page classid="clsid:0D43FE01-F093-11
CF-8940-00A0C9054228"></object>
这时候就出错了。
新建一用户:iusr_domain
IIS里设置对应站点的匿名用户IUSR_DOMAIN
CACLS: 设置目录权限
这样FSO可用,但不会影响别人
相关推荐
-
FileSystemObject 示例代码
在本节描述的示例代码,提供真实的例子来示范在 FileSystemObject 对象模式中可用的许多功能.该代码显示了如何一起使用对象模式的所有功能,以及如何在您自己的代码中有效地使用这些功能. 请注意,由于该代码是极一般的,所以要使该代码能够真正在您的机器上运行,可能需要一些其他代码和小小的变更.这些改变之所以必要,是因为在 Active Server Pages 和 Windows Scripting Host 之间,为输入和输出给用户采用了不同的方法. 要在 Active Server P
-
JavaScript使用FileSystemObject对象写入文本文件内容的方法
本文实例讲述了JavaScript使用FileSystemObject对象写入文本文件内容的方法.分享给大家供大家参考.具体如下: 这段代码主要是练习JavaScript的FileSystemObject对象,用它来让JavaScript向一个文本文件中写入内容,这个TXT文件的路径你可以自己指定,然后定义好要写入的内容,运行代码,你会发现原来的TXT文本中的内容已改变. 运行效果如下图所示: 具体代码如下: <html> <head> <title>写入文本文件<
-
FileSystemObject 对象
FileSystemObject 对象 FileSystemObject(FSO) 对象模式包含下面的对象和集合. 对象/集合 描述 FileSystemObject 主对象.包含用来创建.删除和获得有关信息,以及通常用来操作驱动器.文件夹和文件的方法和属性.和该对象相关联的许多方法,与其他 FSO 对象中的方法完全相似:它们是为了方便才被提供的. Drive 对象.包含用来收集信息的方法和属性,这些信息是关于连接在系统上的驱动器的,如驱动器的共享名和它有多少可用空间.请注意,"drive&qu
-
JS基于FileSystemObject创建一个指定路径的TXT文本文件
本文实例讲述了JS基于FileSystemObject创建一个指定路径的TXT文本文件.分享给大家供大家参考.具体如下: Js创建一个指定路径的TXT文本文件,创建一个新的new ActiveXObject对象,使用这个对象的CreateTextFile方法来创建一个指定路径的TXT文本文件,简单吧? 在IE浏览器上运行该实例会有对应的安全提示,选择"允许阻止的内容",使程序正常运行即可.如下图所示: 文本文件创建成功后提示如下: 若文本文件已存在,则有如下提示: 具体代码如下: &l
-
javascript下用ActiveXObject控件替换word书签,将内容导出到word后打印第1/2页
最近有需求将数据导出到word里,然后编辑打印. 想过几种方案: 1.使用jacob. 2.使用apache的poi. 3.使用itext. 由于时间比较紧,没多的时候去学习研究上述工具包,现在用javascript操作ActiveXObject控件,用替换word模板中的书签方式解决. 前提条件: 1.浏览器安全级别降低,可以使用ActiveXObject控件. 2.装有office word. 目前实现了替换单个书签,多行表格书签,和图片,基本上满足需求.不过还有很多操作word的使用方法不
-
JavaScript调用ajax获取文本文件内容实现代码
这几年JQuery写多了,传统的的javascript已经很久不写了,不少东西都忘掉了,还有多少人记得javascript中实现ajax操作需要借助XMLHttpRequest对象,其实jquery的ajax本质也是这个,好了,今天就花点时间演示一下如何用传统javascript获取文本内容并展示在页面上,废话不多少,直接上代码,注释写的很详细,大家应该能看懂: 复制代码 代码如下: <script type="text/javascript"> //(A)①获取文本文件方
-
JavaScript使用ActiveXObject访问Access和SQL Server数据库
JS操作 Access 数据库 复制代码 代码如下: <SCRIPT LANGUAGE="JavaScript"> <!-- var filePath = location.href.substring(0, location.href.indexOf("实例197.连接Access数据库.html")); //以当前页面文件为基础,找到文件所在的绝对路径 var path = filePath + "197.mdb"
-
JavaScript中使用ActiveXObject操作本地文件夹的方法
在Windows平台上, js可以调用很多Windows提供的ActivexObject,本文就使用js来实现文档处理, 和使用js编写ActiveX做一个简单介绍. 复制代码 代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html> <head> <t
-
使用JavaScript的ActiveXObject对象检测应用程序是否安装的方法
公司自己内部的程序,通过调用外部协议来正常使用,但外部协议必须配合一个客户端才可以,所以想通过js来判断是否安装了客户端,如果未安装,跳转到下载的地址,就类似网上一些迅雷.快车下载链接.查了查方法,实现方法如下: 复制代码 代码如下: <script type="text/javascript">function checkClient(obj){ try{ var a = new ActiveXObject("suncloud.app"
-
三种禁用FileSystemObject组件的方法
我整理了一下,本来只找到两种方法,后来被某人一刺激,硬是想到第三种不为人所知的方法,呵呵,也不知道是不是这样的.第一种:用RegSrv32 /u C:\WINDOWS\SYSTEM\scrrun.dll(win98路径)来注销该组 件.此方法过于狠毒,属于同归于尽的方法,大家都没得用,是下招 第二种:修改Progid的值,在ASP里调用组件的方式通常是 Set 对象名=Server. CreateObject("Progid"),这时候我们就可以通过修改注册表中的Progid值从达 到
-
Android 三种延迟操作的实现方法
Android 三种延迟操作的实现方法 实现方法: 一.线程 new Thread(new Runnable(){ public void run(){ Thread.sleep(XXXX); handler.sendMessage();----告诉主线程执行任务 } }).start 二.延时器 TimerTask task = new TimerTask(){ public void run(){ //execute the task } }; Timer timer = new Timer
-
sql下三种批量插入数据的方法
本文将介绍三种批量插入数据的方法.第一种方法是使用循环语句逐个将数据项插入到数据库中:第二种方法使用的是SqlBulkCopy,使您可以用其他源的数据有效批量加载 SQL Server 表:第三种使用的方法是sql server中的表值参数方法,表值参数是 SQL Server 2008 中的新参数类型.表值参数是使用用户定义的表类型来声明的.使用表值参数,可以不必创建临时表或许多参数,即可向 Transact-SQL 语句或例程(如存储过程或函数)发送多行数据. 代码示例: 此例子为控制台输出
-
详解Python用三种方式统计词频的方法
三种方法: ①直接使用dict ②使用defaultdict ③使用Counter ps:`int()`函数默认返回0 ①dict text = "I'm a hand some boy!" frequency = {} for word in text.split(): if word not in frequency: frequency[word] = 1 else: frequency[word] += 1 ②defaultdict import collections f
-
SpringBoot定制三种错误页面及错误数据方法示例
目录 定制错误页面 自定义 error.html 自定义动态错误页面 自定义静态错误页面 定制错误数据 1. 自定义异常处理类 2. 自定义错误属性处理工具 我们知道 Spring Boot 已经提供了一套默认的异常处理机制,但是 Spring Boot 提供的默认异常处理机制却并不一定适合我们实际的业务场景,因此,我们通常会根据自身的需要对 Spring Boot 全局异常进行统一定制,例如定制错误页面,定制错误数据等. 定制错误页面 我们可以通过以下 3 种方式定制 Spring Boot
-
Python中列表(List) 的三种遍历(序号和值)方法小结
目录 列表(List) 的三种遍历(序号和值)方法 Python遍历整个列表 1.深入地研究循环 2.在for循环中执行更多的操作 3.在for循环结束后执行一些操作 列表(List) 的三种遍历(序号和值)方法 if __name__ == '__main__': list = ['html', 'js', 'css', 'python'] for i in list: print(list.index(i), i) # 方法1 print( '遍历列表方法1:') for i in list
-
JavaScript三种获取URL参数值的方法
目录 前言 URLSearchParams URL 纯JS 前言 在 URL 中,查询参数字符串值通常提供有关请求的信息,例如搜索参数或正在使用的对象的 ID.如果在前端处理任何业务或请求逻辑,了解如何从 URL 中检索查询字符串值非常重要.本文分享三种从 URL 获取参数的方法. URLSearchParams 除 IE 11 之外的所有主要浏览器版本都支持该 URLSearchParams 接口.它通过解析 URL 的查询字符串并提供访问值的方法来工作. 例如: 此接口的缺点之一是您必须仅将
-
Python中三种时间格式转换的方法
目录 一 时间元组 二 字符串与时间戳 三 时间的加减用法 一 时间元组 1. 时间元组和时间戳的互化 import time,datetime # 获取当前时间的时间元组 t = time.localtime() print(t) # 时间元组转时间戳 timestamp = time.mktime(t) print(timestamp) # time.struct_time(tm_year=2019, tm_mon=10, tm_mday=23, tm_hour=23, tm_min=15,
-
浅析三种不同的“防Ping”方法
众所周知,Ping命令是一个非常有用的网络命令,大家常用它来测试网络连通情况.但同时它也是把"双刃剑",特别是在网络高速发展的今天,一些"不怀好意"的人在互联网中使用它来探测别人的机器,以此来达到不可告人的目的.为了保证机器在网络中的安全,现在很多人都非常重视"防Ping",当然"防Ping"的方法和手段也非常多,如利用IPSec安全策略.Windows内置的防火墙.第三方防火墙工具.路由和远程访问组件等,到底这些"
-
php三种实现多线程类似的方法
1.curl_multi方法 当需要多线程的时候,可以用curl_multi一次性请求多个操作来完成,但curl走的是网络通信,效率与可靠性就比较差了的. function main(){ $sql = "select waybill_id,order_id from waybill where status>40 order by update_time desc limit 10 "; $data = Yii::app()->db->createCommand($
随机推荐
- 如何创建一个PDF文件?
- 简单谈谈lua和c的交互
- 探讨Oracle中的&号问题
- js使用原型对象(prototype)需要注意的地方
- wap图片滚动特效无css3元素纯js脚本编写
- 现如今最流行的JavaScript代码规范
- PHP XML error parsing SOAP payload on line 1
- 详解Docker 容器互联方法
- 高效使用SSH的16条技巧
- js实现下拉菜单效果
- 微信小程序 scroll-view组件实现列表页实例代码
- IIS+FastCGI+PHP5.3+MySQL5.1+Gzip配置图文详细教程
- Ubuntu 安装 JDK8 的两种方法(总结)
- C语言中 值传递和指针传递实例详解
- Android实现自制和播放录音程序
- Android 遍历文件夹中所有文件的实例代码
- Android CoordinatorLayout高级用法之自定义Behavior
- C++设计模式迪米特法则实例
- 前端js中的事件循环eventloop机制详解
- Spring Security认证提供程序示例详解