ActiveXObject函数详解
var ExcelSheet = new ActiveXObject("Excel.Sheet")
2 ExcelSheet.ActiveSheet.Cells(1,1).Value = "This is column A, row 1";
3 ExcelSheet.SaveAs("C:\\TEST.XLS");
4 ExcelSheet.Application.Quit();
下面我们来看看怎样创建远程服务器中创建对象,但是这有一个前提就是要将Internet安全性关闭。要在远程网络计算机创建对象,可以将该计算机的名称传递给 ActiveXObject 的 servername 参数。该名称与共享名的机器名部分相同。比如共享名为 "\\myserver\public" 的网络,servername 是 "myserver"。另外,可以用 DNS 格式或 IP 地址指定 servername。下面的代码返回在名为 "myserver" 的远程网络计算机上运行的 Excel 实例的版本号:
2 var XLApp = new ActiveXObject("Excel.Application", "MyServer");
3 return(XLApp.Version);
4 }
- javascript取得机器名,用户名,读写注册表,启动应用程序
- //javascript有个特殊的对象ActiveXObject,通过它可以访问windows的本地文件系统和应用程序,
- 比如:有的时候我们需要得到用户的机器名,用户名,得到某个文件的信息,或者读写注册表,或者启动计算器、outlook等应用程序。
- 下面是一些常用的方法,每个都经过了测试。
- <script language="JavaScript">
- //取得机器名,登录域及登录用户名
- function getusername()
- {
- var WshNetwork = new ActiveXObject("WScript.Network");
- alert("Domain = " + WshNetwork.UserDomain);
- alert("Computer Name = " + WshNetwork.ComputerName);
- alert("User Name = " + WshNetwork.UserName);
- }
- //取得系统目录
- function getprocessnum()
- {
- var pnsys=new ActiveXObject("WScript.shell");
- pn=pnsys.Environment("PROCESS");
- alert(pn("WINDIR"));
- }
- //返回系统中特殊目录的路径
- function getspecialfolder()
- {
- var mygetfolder=new ActiveXObject("WScript.shell");
- if(mygetfolder.SpecialFolders("Fonts")!=null)
- {
- alert(mygetfolder.SpecialFolders("Fonts"));
- }
- }
- //取得磁盘信息 传入参数如:getdiskinfo('c')
- function getdiskinfo(para)
- {
- var fs=new ActiveXObject("scripting.filesystemobject");
- d=fs.GetDrive(para);
- s="卷标:" + d.VolumnName;
- s+="------" + "剩余空间:" + d.FreeSpace/1024/1024 + "M";
- s+="------" + "磁盘序列号:" + d.serialnumber;
- alert(s)
- }
- //取得系统目录
- function getprocessnum()
- {
- var pnsys=new ActiveXObject("WScript.shell");
- pn=pnsys.Environment("PROCESS");
- alert(pn("WINDIR"));
- }
- //启动计算器
- function runcalc()
- {
- var calc=new ActiveXObject("WScript.shell");
- calc.Run("calc");
- }
- //读取注册表中的值
- function readreg()
- {
- var myreadreg=new ActiveXObject("WScript.shell");
- try{
- alert(myreadreg.RegRead ("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\\NeroCheck"));
- }
- catch(e)
- {
- alert("读取的值不存在!");
- }
- }
- //写注册表
- function writereg()
- {
- var mywritereg=new ActiveXObject("WScript.shell");
- try{
- mywritereg.RegWrite("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\\MyTest","c:\\mytest.exe");
- alert("写入成功!");
- }
- catch(e)
- {
- alert("写入路径不正确!");
- }
- }
- //删除注册表
- function delreg()
- {
- var mydelreg=new ActiveXObject("WScript.shell");
- if(confirm("是否真的删除?"))
- {
- try{
- mydelreg.RegDelete("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run\\MyTest");
- alert("删除成功!");
- }
- catch(e)
- {
- alert("删除路径不正确");
- }
- }
- }
- //取得文件信息 调用方式如:getfileinfo('c:\\test.pdf')
- function getfileinfo(para)
- {
- var myfile=new ActiveXObject("scripting.filesystemobject");
- var fi=myfile.GetFile(para);
- alert("文件类型:"+fi.type+"文件大小:"+fi.size/1024/1024+"M"+"最后一次访问时间:"+fi.DateLastAccessed);
- }
- //取得客户端的信息
- function clientInfo()
- {
- strClientInfo="availHeight= "+window.screen.availHeight+"\n"+
- "availWidth= "+window.screen.availWidth+"\n"+
- "bufferDepth= "+window.screen.bufferDepth+"\n"+
- "colorDepth= "+window.screen.colorDepth+"\n"+
- "colorEnable= "+window.navigator.cookieEnabled+"\n"+
- "cpuClass= "+window.navigator.cpuClass+"\n"+
- "height= "+window.screen.height+"\n"+
- "javaEnable= "+window.navigator.javaEnabled()+"\n"+
- "platform= "+window.navigator.platform+"\n"+
- "systemLanguage= "+window.navigator.systemLanguage+"\n"+
- "userLanguage= "+window.navigator.userLanguage+"\n"+
- "width= "+window.screen.width;
- alert(strClientInfo);
- }
- </script>
- //另存为excel文件并写入值
- function saveas(){
- var ExcelApp = new ActiveXObject("Excel.Application");
- var ExcelSheet = new ActiveXObject("Excel.Sheet")
- ExcelSheet.Application.Visible = true;
- ExcelSheet.ActiveSheet.Cells(1,1).Value = "This is column A, row 1";
- ExcelSheet.SaveAs("C:\\TEST.XLS");
- ExcelSheet.Application.Quit();
- alert('ok');
- }
判断浏览器是否支持ActiveX控件,如果浏览器支持ActiveX控件可以利用
(window.ActiveXObject) 什么意思?
解:判断浏览器是否支持ActiveX控件,如果浏览器支持ActiveX控件可以利用
var xml=new ActiveXObject("Microsoft.XMLHTTP");创建XMLHttpRequest 对象(这是在IE7以前的版本中);在较新的IE版本中可以利用 var xml=new ActiveXObject("Msxml2.XMLHTTP")的形式创建XMLHttpRequest对象;而在IE7及非IE浏览器中可以利用var xml=new XMLHttpRequest()创建XMLHttpRequest对象。
创建XMLHttpRequest 对象,必须考虑到浏览器兼容问题
创建XMLHTTPRequest对象
对了,说到区别,我们这里来看看怎么来声明(使用)它,在使用XMLHTTPRequest对象发送请求和处理响应之前,我们必须要用javascript创建一个XMLHTTPRequest对象。(IE把XMLHTTPRequest实现为一个ActiveX对象,其他的浏览器[如Firefox/Safari/Opear]则把它实现为一个本地的javascript对象)。下面我们就来看看具体怎么运用javascript来创建它吧:
代码:
<!--
var xmlhttp;
// 创建XMLHTTPRequest对象
function createXMLHTTPRequest(){
if(window.ActiveXObject){ // 判断是否支持ActiveX控件
xmlhttp = new ActiveObject("Microsoft.XMLHTTP"); // 通过实例化ActiveXObject的一个新实例来创建XMLHTTPRequest对象
}
else if(window.XMLHTTPRequest){ // 判断是否把XMLHTTPRequest实现为一个本地javascript对象
xmlhttp = new XMLHTTPRequest(); // 创建XMLHTTPRequest的一个实例(本地javascript对象)
}
}
//-->
</script>
js用来区别IE与其他浏览器及IE6-8之间的方法。
1、document.all
2、!!window.ActiveXObject;
使用方法如下:
alert(”IE浏览器”);
}else{
alert(”非IE浏览器”);
}
if (!!window.ActiveXObject){
alert(”IE浏览器”);
}else{
alert(”非IE浏览器”);
}
下面是区别IE6、IE7、IE8之间的方法:
var isIE6=isIE&&!window.XMLHttpRequest;
var isIE8=isIE&&!!document.documentMode;
var isIE7=isIE&&!isIE6&&!isIE8;
if (isIE){
if (isIE6){
alert(”ie6″);
}else if (isIE8){
alert(”ie8″);
}else if (isIE7){
alert(”ie7″);
}
}
首先我们确保这个浏览器为IE的情况下,进行了在一次的检测,如果你对此有怀疑,可以测试一下。
我这里就直接使用在判断中了,你也可以将他们先进行声明成变量进行使用。据说火狐以后也会加入document.all这个方法,所以建议使用第二种方法,应该会安全一些。
ActiveXObject函数详解的更多相关文章
- ActiveXObject函数详解(转)
什么是 ActiveX 控件? ActiveX 控件广泛用于 Internet.它们可以通过提供视频.动画内容等来增加浏览的乐趣.不过,这些程序可能出问题或者向您提供不需要的内容.在某些情况下,这些程 ...
- ActiveXObject函数详解(转自http://eyesinthesky.iteye.com/blog/1560033)
什么是 ActiveX 控件? ActiveX 控件广泛用于 Internet.它们可以通过提供视频.动画内容等来增加浏览的乐趣.不过,这些程序可能出问题或者向您提供不需要的内容.在某些情况下,这些程 ...
- malloc 与 free函数详解<转载>
malloc和free函数详解 本文介绍malloc和free函数的内容. 在C中,对内存的管理是相当重要.下面开始介绍这两个函数: 一.malloc()和free()的基本概念以及基本用法: 1 ...
- NSSearchPathForDirectoriesInDomains函数详解
NSSearchPathForDirectoriesInDomains函数详解 #import "NSString+FilePath.h" @implementation ...
- JavaScript正则表达式详解(二)JavaScript中正则表达式函数详解
二.JavaScript中正则表达式函数详解(exec, test, match, replace, search, split) 1.使用正则表达式的方法去匹配查找字符串 1.1. exec方法详解 ...
- Linux C popen()函数详解
表头文件 #include<stdio.h> 定义函数 FILE * popen( const char * command,const char * type); 函数说明 popen( ...
- kzalloc 函数详解(转载)
用kzalloc申请内存的时候, 效果等同于先是用 kmalloc() 申请空间 , 然后用 memset() 来初始化 ,所有申请的元素都被初始化为 0. view plain /** * kzal ...
- Netsuite Formula > Oracle函数列表速查(PL/SQL单行函数和组函数详解).txt
PL/SQL单行函数和组函数详解 函数是一种有零个或多个参数并且有一个返回值的程序.在SQL中Oracle内建了一系列函数,这些函数都可被称为SQL或PL/SQL语句,函数主要分为两大类: 单行函数 ...
- jQuery.attr() 函数详解
一,jQuery.attr() 函数详解: http://www.365mini.com/page/jquery-attr.htm 二,jQuery函数attr()和prop()的区别: http: ...
随机推荐
- XML学习笔记(三) -- Schema
标签(空格分隔): 学习笔记 Schema的格式 XML Schema文档是由元素.属性.命名空间和XML文档中的其他节点构成的. XML Schema有两种重要的Schema模型:Microsoft ...
- Linux架构
Linux架构 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我以下图为基础,说明Linux的架构(architecture ...
- web缓存
web缓存HTTP协议的一个核心特性,它能最小化网络流量,并且提升用户所感知的整个系统响应速度. 什么能被缓存? *Logo和商标图像 *普通的不变化的图像(例如,导航图标) *CSS样式表 *普通的 ...
- Flex Excel下载
最近做Flex里的Excel下载,用as3xls进行Excel导出后,Excel修改编辑后老出现:不能以当前格式保存...若要保存所做的更改,请单击“确定”,然后将其另存为最新的格式. 最后通过JAV ...
- <a>每次点击都会让浏览器重新打开一个窗口问题
<a> 标签的 target 属性规定在何处打开链接文档.如果在一个 <a> 标签内包含一个 target 属性,浏览器将会载入和显示用这个标签的 href 属性命名的.名称与 ...
- c#入门笔记(1)数据类型
1.c#有三种数据类型,分别是数值型,引用类型,指针类型. 2.数值类型 2.1整数类型:sbyte,byte,short,ushort ,int uint,long,ulong(u开头是无符号,范围 ...
- akka笔记
Actor UntypedActor actor的基类,继承并实现onReceive方法就可以得到一个Actor. Props 配置类,用Props.create可以创建一个按指定配置生成的Actor ...
- transition&transform,CSS中过度和变形的设置
设置样式的过度效果transition-property: none/all; transition-duration:2s;运动时间,默认是0秒 transition-delay:0s; 延迟时间默 ...
- MTF(Move-to-front transform)数据转换
1.什么是MTF MTF(move-to-front)是一种数据编码方式,用于提高数据压缩技术效果. 在数据压缩算法中,MTF可以作为一个额外的步骤.也就是说 ,可以先进行MTF编码,在进行数据压缩. ...
- text-overflow:ellipsis
关键字: text-overflow:ellipsis 语法:text-overflow : clip | ellipsis 取值: clip :默认值 .不显示省略标记(...),而是简单的裁切. ...