软件测试


网站首页 | 软件测试论坛 | 软件测试培训 | 软件测试博客 | 软件测试杂志 | 软件测试沙龙 | 软件测试下载 | 软件测试顾问
业界新闻 | 软件测试人才 | 软件测试技术 | 软件测试工具 | 行业软件测试 | 软件测试管理 | 软件质量专栏 | 软件开发专栏
当前位置:首页>>软件测试工具>>其它工具>>正文
在Silktest中自动添加打印机
文章出处: 作者:Whisper 发布时间:2007-03-07
首先来看一个动态连接库文件: Printui.dll
点击开始->运行,输入:
rundll32 printui.dll,PrintUIEntry [options] [@commandfile]

Rundll32.exe 可以帮助我们运行dll文件,printui.dll后面的逗号,其实说明的是入口点:PrintUIEntry。
后面的选项以及@commandfile详情只要输入
rundll32 printui.dll,PrintUIEntry /?
即可


在自动测试的过程中,我们经常会遇到这样一种情况:

在遍历dialog的时候,需要测试有/无安装打印机时软件的反馈。
那么在Silktest中怎么实现呢?

在Silktest中,有一个命令:Sys_Execute:
Syntax
iReturn = SYS_Execute (sCmdLine [, lsOutput])

iReturn :The return value of the command. INTEGER.
sCmdLine :The command to execute. STRING.
lsOutput :[Optional.] A variable to hold any text written to stdout when sCmdLine runs. LIST OF STRING.

这个命令执行一个命令行命令。并且把退出结果返回给返回值。所有的命令输出被写入IsOutput。简单的说,你可以把这个命令完全当作windows的命令行工具来用,他就和Windows键+R 一个效果。
说道这里大家肯定都想到了:利用这个命令,利用Windows Rundll32.dll,调用Printui.dll的函数,就可以拉。于是非常简单的:

[-] void AddNetworkPrinter (string printername)
[ ]SYS_Execute("Rundll32 printui.dll,PrintUIEntry /in /n {printername}")

这个函数将调运Rundll32 通过它访问printui.dll的PrintUIEntry函数,传递 /in /n {printername} 其中{printername}是你在定义里给出的string pritername

当然,除了Sys_Execute我们还有其他的方法。(实际情况是,SYS_EXECUTE这个函数,不怎么完善...) 我们可以在silktest的脚本中,直接加载dll,因此有如下方法:

[-] dll "kernel32.dll"
[ ] //INT WinExec (String sPath, int iWinType)
[ ] INT WinExec (LPCSTR sPath, UINT iWinType)
[-] void AddNetworkPrinter (string printername)
[ ] // Example: AddNetworkPrinter("\\printserver\printer")
[ ] Winexec("rundll32 printui.dll,PrintUIEntry /in /n{printerName}", SW_SHOWMINIMIZED)

其实都是一样的。只是列在这里说明使用dll "xxxx.dll"的方法。其中的 WinExec,可以自行参照MSDN.这里不再赘述。


站内搜索
相关文章
◎本地化测试工具HtmlQA的应用
◎测试工具备查
◎用FIT 集成测试框架进行确认测试
◎C++TEST基本概述
◎C++TEST功能概述
◎C++Test的使用说明
◎代码检测:Code Review与CheckStyle
◎选择正确的GUI测试自动化工具
◎testview测试工具详介
◎抛砖引玉,GUI自动化测试的设计
◎性能测试软件介绍:SilkPerformer
◎测试工具的选择和使用
◎Purify检测的代码错误类型
◎实时嵌入式软件测试工具的研究
◎CODETEST——嵌入式软件实时测试工具
◎基于GUI的自动化测试工具
◎QALoad优秀的性能测试工具
◎测试覆盖率工具--clover.net
◎开发自动化测试脚本的技巧和心得
◎GHOST V8.0 使用详解
◎水滴石穿C语言之代码检查工具
◎三款Java分析器点评
◎嵌入式软件工业化测试工具LOGISCOPE
◎WAS服务器负载测试软件导读
◎Radview公司的web性能测试和分析系列工具
◎Running Optimizeit from the command line
◎Optimizeit Code Coverage概览
◎Optimizeit Profiler概览
◎JProbe Suite 4.0使用说明
◎JProbe Profiler-优秀的剖析工具
◎JProbe使用说明
◎JProfiler跟踪和检查系统性能的好工具
◎Running Optimizeit from the command line
◎JProbe Profiler-优秀的剖析工具
◎Compuware DevPartner Studio简介
热门文章
◎测试工具的选择和使用
◎GHOST V8.0 使用详解
◎QALoad优秀的性能测试工具
◎水滴石穿C语言之代码检查工具
◎JProfiler跟踪和检查系统性能的好工具
◎开发自动化测试脚本的技巧和心得
◎Compuware DevPartner Studio简介
◎JProbe使用说明
◎Optimizeit Profiler概览
◎基于GUI的自动化测试工具
◎WAS服务器负载测试软件导读
◎三款Java分析器点评
◎testview测试工具详介
◎测试覆盖率工具--clover.net
◎JProbe Profiler-优秀的剖析工具
◎嵌入式软件工业化测试工具LOGISCOPE
◎性能测试软件介绍:SilkPerformer
◎CODETEST——嵌入式软件实时测试工具
◎选择正确的GUI测试自动化工具
◎实时嵌入式软件测试工具的研究
◎JProbe Suite 4.0使用说明
◎抛砖引玉,GUI自动化测试的设计
◎C++TEST基本概述
◎JProbe Profiler-优秀的剖析工具
◎测试工具备查
◎Radview公司的web性能测试和分析系列工具
◎Purify检测的代码错误类型
◎Optimizeit Code Coverage概览
◎代码检测:Code Review与CheckStyle
◎C++Test的使用说明
◎C++TEST功能概述
◎Running Optimizeit from the command line
◎Running Optimizeit from the command line
◎用FIT 集成测试框架进行确认测试
◎本地化测试工具HtmlQA的应用

Google提供的广告