分享
 
 
 

探讨Windows下登录工具KiXtart

王朝system·作者佚名  2008-05-19
窄屏简体版  字體: |||超大  

登录脚本是一种集中控制各种日常管理任务的首选途径;没有了登录脚本,这些任务就必须到用户的桌面上手工完成。特别是在WAN环境中,登录脚本的优势非常明显。

KiXtart是一个优秀的高级登录脚本工具,远比Windows NT系列操作系统内建的、DOS批命令风格的处理器强大,例如,KiXtart允许访问NT SAM或系统信息,操作文件,修改注册表,或者执行OLE自动化任务。KiXtart能够根据用户标识和所属群组灵活地调用脚本和子过程,必要时我们可以用一个脚本来调用其他的脚本。这些功能方便了脚本的集中控制,简化了脚本代码的维护和调试。

一、配置KiXtart运行环境

配置一个基本的KiXtart运行环境很简单。KiXtart是Microsoft Windows 2000 Resource Kit的一部分,最新版可以从http://www.kixtart.org下载。要运行KiXtart脚本,只要在所有提供验证服务的服务器上,将KiXtart执行文件(kix32.exe)放到\neglogon共享目录就可以了。

但对于Windows 9x系统,KiXtart还需要额外的配置才能与KiXtart远程过程调用服务通信,即必须在每一个域控制器(DC)上安装RPC服务,再把KiXtart的辅助DLL(kx95.dll、kx16.dll、kx32.dll)和kix32.exe文件一起放入\netlogon共享服务。KiXtart的下载包带有RPC服务的执行文件kxrpc.exe。

二、编写脚本

KiXtart脚本文件其实就是普通的文本文件,可以用记事本或其他文本编辑器编辑,但文件的扩展名一般是.kix。如果要在用户登录期间运行某个KiXtart脚本,只要在该用户帐户的配置文件中设置登录脚本选项即可。用不带参数的形式调用kix32.exe时,KiXtart将寻找和运行默认的脚本文件kixtart.kix,我们可以在kixtart.kix脚本中调用其他脚本,将kixtart.kix作为一个主控脚本使用。

KiXtart具有丰富的脚本语言功能,包括控制结构、命令、函数、变量、数组等。虽然说不一定只有专业的开发者才能使用KiXtart,但了解一些基本的编程知识还是有好处的。

■ 控制结构

控制结构是控制脚本运行流程的命令,例如根据一定的条件允许某些命令或其他脚本运行。假设在一个所有用户都运行的脚本中,我们只想让某个用户运行特定的脚本代码,可以加入下列If Else Endif结构:

If @USERID = "testuser"

Call "testusers.kix"

EndIf

每一个用户都会运行上面的登录脚本,但只有testuser用户会调用testusers.kix脚本。其他KiXtart控制结构还包括:

⑴ Do...Until:反复运行一个代码片断,直至指定的条件为真。

⑵ While Loop:当指定的条件为真时,反复地运行一个代码片断。

⑶ For Each:对于数组或对象中的每一个元素,分别运行一次代码片断。

⑷ For...Next:将一个代码片段运行一定的次数。

■ 变量

变量是一种用描述性名称来存储信息的机制,存储在变量中的数据可以随时修改。在KiXtart中,所有变量必须以“$”符号开头。

就象其他专业的编程语言一样,KiXtart变量也有一定的作用范围。变量的作用范围决定了当一个脚本调用子过程或其他脚本时,被调用的子过程或脚本是否能够访问前者定义的变量。如果为变量指定了错误的作用范围,很可能导致脚本错误,或出现不可预料的运行结果。KiXtart变量的作用范围有两种:Global,这种类型的变量可以被所有脚本程序访问和修改;Local,这类变量只能在声明它的子过程或脚本之内访问。

KiXtart变量可以用多种方式声明:

⑴ 隐式声明:在脚本中直接将一个值赋予一个变量。隐式声明的变量具有全局作用范围,所有脚本程序和子过程都可以访问它。

⑵ 显式声明:首先定义变量,然后才给它赋值。有两个命令可以定义变量,即Dim和Global。Dim定义的变量作用范围是本地(Local),只能在定义它的子过程或脚本之内访问;Global定义的变量是全局变量。

■ 宏

在KiXtart中,宏的作用是从运行脚本的系统或网络返回信息。KiXtart的宏类似于一种环境变量,不要将它与Word、Excel或Word Perfect的宏混淆。KiXtart的宏不是程序,用户不能修改它们。所有的宏都以@字符开头,常用的宏包括:

① @USERID:返回当前的用户。

② @LSERVER:返回为当前登录进程验证身份的服务器。

③ @WKSTA:返回正在运行脚本的工作站名称。

④ @TIME:返回系统时间。

■ 命令

命令执行一个动作。下面列出了几种常用的命令:

⑴ Use:映射驱动器,或者连接到其他网络资源,例如打印机。

⑵ Shell:装入并运行一个程序。在KiXtart脚本程序中,我们不能直接使用标准的Windows批命令,所以KiXtart提供了Shell命令让我们调用标准的批命令和外部程序。被调用的外部程序可以是任何16位或32位Windows程序。用Shell命令调用外部程序时,KiXtart脚本会暂停执行,等待外部程序结束。所以调用外部程序时务必慎重:如果被调用的程序挂起,脚本也会停止响应。

⑶ Copy:复制一个文件。

■ 函数

函数类似于命令,不同之处在于函数会返回数据。通常情况下,我们要把函数的返回值保存到某个变量。有时函数的返回值表示动作的执行状态。例如,ADDKEY()函数将一个注册键加入到注册表,它的返回值表示加入注册键的操作是否成功。又如,UCASE()函数将字符串转换成大写,例如UCASE("hello")的返回值是“HELLO”。

除了大多数编程语言都提供的标准函数之外,KiXtart专门提供了许多面向登录操作的函数,INGROUP()函数就是一个例子――它能够判断登录的用户是否属于特定的组。例如,下面的代码判断当前用户是否属于Finance组,如是,则删除当前的驱动器映射“G:”,然后再将“G:”映射到Finance部门的共享目录。

If INGROUP("Finance")

Use g: /delete

Use g: "\\servername\financeshare"

EndIf

■ 用户定义函数

KiXtart允许创建用户定义函数(UDF),极大地改进了登录脚本的灵活性。我们可以利用UDF机制创建公用的脚本模块,简化脚本开发。

KiXtart网站提供了大量实用脚本范例,包括计算和提示磁盘容量/配额、比较目录、配置打印机、建立文件关联、检查病毒库版本、搜索文件、配置环境变量,等等,有兴趣的读者可以参看,地址是http://home.wanadoo.nl/scripting/index-kix-scripts.htm

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有