Asp.Net 之 通过调用 WScript.Shell 启动本地 exe 程序时产生“ automation服务器不能创建对象 ”的错误

我们经常需要通过生成 ActiveXObject("WScript.Shell"); 来调用某一exe文件。

  设置网页打印的页眉页脚为空:

    var HKEY_Root,HKEY_Path,HKEY_Key;
    HKEY_Root="HKEY_CURRENT_USER";
    HKEY_Path="//software//Microsoft//Internet Explorer\\PageSetup\\";
    function PageSetup_Null()
    {
        try {
            var Wsh=new ActiveXObject("WScript.Shell");
            HKEY_Key="header";
            Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"");
            HKEY_Key="footer";
            Wsh.RegWrite(HKEY_Root+HKEY_Path+HKEY_Key,"");
        }  catch(e)
        {
            alert("Error:"+e.message+"。");
        }
    }

  调用 exe 程序,调用计算器:

{
     var   wshShell   =   new   ActiveXObject("WScript.Shell");
     wshShell.run("calc.exe");
} 

  

  问题表现:

  经常会报 “automation服务器不能创建对象” 的错误。

  解决方案:

  1、如果是Scripting.FileSystemObject (FSO 文本文件读写)被关闭了,
  开启FSO功能即可,在“运行”中执行regsvr32 scrrun.dll即可

  2、安全模式设置成“ 中 ”,如果javascript脚本中报这个错误,
  还应将IE的安全设置“不允许运行未标记为安全的activeX控件”启用即可。

  注意如果您将相应的网站设成“受信任的站点”,
  必须对“受信任的站点”进行相应的IE安全设置,此时如果对“Internet”IE设置将是徒劳的。

  3、有些脚本需要微软的 MSXML 控件才能进入。
  当使用 IE 5 以上版本的缺省安全模式时,会提示是否接受 MSXML 控件,
  如果接受,MSXML 将自动安装到您的机器上(得等上几分钟)。
  如果自动安装不成功,可以自行下载和安装 MSXML 3.0 SP7。
  有时是由于msxml 3服务被关掉了,使用regsvr32 msxml3.dll即可

时间: 2024-08-05 11:11:43

Asp.Net 之 通过调用 WScript.Shell 启动本地 exe 程序时产生“ automation服务器不能创建对象 ”的错误的相关文章

调用WScript.Shell时产生Automation 服务器不能创建对象的错误

我们经常需要通过生成ActiveXObject("WScript.Shell");来调某一exe文件, 如 //设置网页打印的页眉页脚为空 var HKEY_Root,HKEY_Path,HKEY_Key;         HKEY_Root="HKEY_CURRENT_USER";         HKEY_Path="//software//Microsoft//Internet Explorer\\PageSetup\\";      fu

通过Web启动本地应用程序

通过自定义协议在Web中启动本地应用程序 实例是打开本地安装的Word程序 注册自己的协议Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\word]   @="word"   "URL Protocol"="C:\\ProgramFiles (x86)\\Microsoft Office\\Office14\\WINWORD.EXE"    [HKEY_CLASSES_ROOT\wo

(转)通过自定义URL协议在Web中启动本地应用程序

通过自定义URL协议在Web中启动本地应用程序 1.注册应用程序来处理自定义协议 你必须添加一个新的key以及相关的value到HKEY_CLASSES_ROOT中,来使应用程序可以处理特殊的URL协议. 新注册的key必须与协议scheme相匹配才可以被添加.例如,增加一个“alert:”协议,被增加到HKEY_CLASSES_ROOT的key必须是alert.在这个新的key之下,默认的字符串value将显示新协议的名字,并且URL协议字符串value将包含协议特有的信息或者空字符串.Key

chrome浏览器插件启动本地应用程序

chrome浏览器插件启动本地应用程序 2014-04-20 00:04:30|  分类: 浏览器插件|举报|字号 订阅 下载LOFTER我的照片书  | chrome的插件开发这里就不多讲了,本篇文章只讲如何调用谷歌浏览器的api启动本地的程序并与之通信 要启动本地的应用插件需要包括两部分的内容: 1)安装到浏览器的插件部分 2)放置在本地的json文件 第一部分就跟普通的谷歌浏览器插件是一样的,包括两个必须的文件: 1)background.js(名字不一定为background......

html网页调用本地exe程序的实现方法:

html网页调用本地exe程序的实现方法:1.新建注册表具体文件: Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\hhtpexe] [HKEY_CLASSES_ROOT\hhtpexe\defaulticon ]@="C:\\Program Files\\DMEO\\MultimediaDispatch.exe"--exe程序的路径 [HKEY_CLASSES_ROOT\hhtpexe\shell] [HKEY_CLAS

141107●Winform拖动无边框窗口、播放音频、启动外部exe程序

鼠标拖动无边框窗口 1. //鼠标拖动 Point downpoint = new Point(); //事件,鼠标按下,获取当前坐标 private void panel1_MouseDown(object sender, MouseEventArgs e) { downpoint.X = -e.X; downpoint.Y = -e.Y; } //事件,鼠标移动,赋值新坐标 private void panel1_MouseMove(object sender, MouseEventArgs

关于asp.net执行exe程序时权限不够的解决办法

一,本文背景 长话短说:asp.net项目中需要用到PDF转换成SWF文件,用户上传后自动调用pdf2swf.exe转换. 但有个问题,执行时权限不够,导致一直报错(滚动条一直在往下滚,刷屏中),见下图 二,解决办法 百度了一堆答案,很多说是要改IIS执行环境的,但我的情况不是这样,因为我是在VS中执行的,还没部署就已经出现错误了. 出去上了个厕所,回来无意中把进度的执行目录改成了pdf2swf.exe所在的目录,竟然一下子好了,(见下图) 其中 pdf2FlashPath 就是 pdf2swf

html网页调用本地exe程序

1.使用记事本(或其他文本编辑器)创建一个protocal.reg文件,并写入以下内容 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\myWebshell] @="URL:myWebshell Protocol Handler" "URL Protocol"="" [HKEY_CLASSES_ROOT\myWebshell\DefaultIcon] @="D:\\Prog

C#调用exe文件,IIS发布后无法掉用本地exe程序的解决方法

http://blog.csdn.net/junjieking/article/details/6277836?reload这位楼主的问题,我也遇到了,但是我按照他那样操作并没有解决问题,弄了好久终于找到解决方案了, 方案如下:IIS管理器——应用程序池——设置应用程序池默认设置——进程模型——标识,这个标识里面有内置账户和自定义账户,我设置自定义账户,然后填上Administration(必须是管理员账户或者拥有管理员权限的账户)和密码.PS:我的系统是windows7的系统,其他应该也差不多