使用windows脚本对象

字体大小: 中小 标准 ->行高大小: 标准
在Delphi我们可以通过前期编译或后期绑定来调用windows script host.如果引入类型库,可以获得两个新的对象,很容易使用。下面是利用后期绑定的自动化实现创建一个快捷方式并把它放到桌面上的例子:

procedure CreateShortcut( sName,sPath:string);

var

objShortcut, objShell :variant;

strDesk:string;

begin

objShell:= CreateOleObject('Wscript.Shell');

strDesk:= objShell.SpecialFolders.Item('Desktop');

objShortcut:= objShell.CreateShortcut(strDesk +'\'+ sName +'.lnk');

objShortcut.Targetpath:= sPath;

objShortcut.Save;

objShell:=UnAssigned;

objShortcut:=UnAssigned;

end;

把'.lnk'后缀变成'.url'后缀会生成一个Internet快捷方式。如果使用'mailto:: '而不是'http://:'作为内容,会生成一个mail的快捷方式,我们还可以添加'&subject='和'&body='在内容字符串中,会调用mail程序自动生成一个带主题和内容的邮件模板。同时外壳对象的Run方法可以执行任何程序,比如Shell.Run('Calc')可以用来调用计算器。Shell.popup可以在屏幕上显示信息。

Windows脚本对象另一个重要的应用方面是网络。下面的例子用它来获得网络信息:

function ShowNetwork:string;

var

ObjNetwork :variant;

begin

ObjNetwork:= CreateOleObject('Wscript.Network');

Result:= '用户域 : ' + ObjNetwork.UserDomain + #10 +#13 + '用户名 :

' +

ObjNetwork.UserName + #10 +#13 + '计算机名称 : ' +

ObjNetwork.ComputerName ;

ObjNetwork:=UnAssigned;

end;

要注意的是并不是所有的系统都安装了windows script host对象,因为在系统安装时这是一个可选项,比如我的win98上就没有装,只在NT 4.0上安装了。

此文章由 http://www.ositren.com 收集整理 ,地址为: http://www.ositren.com/htmls/68671.html