51Testing软件测试论坛

标题: qtp如何调用.dlll? [打印本页]

作者: juemingzi    时间: 2007-3-27 09:49
标题: qtp如何调用.dlll?
我们公司的系统,中的 一个 控键不是标准的.net控键,  也是调用一个.dll,
我象识别这个控键,不知道在qtp中如何调用dll
作者: pcl2004_27    时间: 2007-3-29 21:50
调用dll,例如
实现user32.dll,其中包含findwindow函数,如下调用
Extern.Declare micHwnd, "FindWindow", "user32.dll", "FindWindowA", micString, micString
'Declare SetWindowText method
Extern.Declare micLong, "SetWindowText", "user32.dll", "SetWindowTextA", micHwnd, micString
作者: sincky    时间: 2007-3-29 22:08
请看qtp帮助文档,目录是:QuickTest Professional 用户指南 > 高级功能 > 使用专家视图 > 使用 Windows API 增强测试

有具体讲解!
作者: 金城月    时间: 2007-5-28 11:54
我也是刚刚接触QTP,问一下,如果想要调用CallByName()这个VB的函数,是不是也需要调用外部的DLL文件?因为我看MSDN上说这个函数需要dll支持?
作者: andy    时间: 2007-5-28 14:01
QTP 提供一个功能,可以使用自己写的vbscript脚本,然后用QTP去调用.
如果CallByName()函数是VB的函数那么可以直接使用.
作者: 金城月    时间: 2007-5-29 16:51
我试了很多次,这个函数QTP不能识别啊。
作者: andy    时间: 2007-6-4 17:33
http://msdn2.microsoft.com/zh-cn/library/chsc1tx6(VS.80).aspx

Visual Basic 语言参考  
CallByName 函数  

执行对象的方法,或者设置或返回对象的属性。


Public Function CallByName( _
   ByVal ObjectRef As System.Object, _
   ByVal ProcName As String, _
   ByVal UseCallType As CallType, _
   ByVal Args() As Object _
) As Object

参数
ObjectRef
必选。Object。指向公开属性或方法的对象的指针。

ProcName
必选。String。包含对象的属性名或方法名的字符串表达式。

UseCallType
必选。CallType 枚举类型的枚举成员,表示所调用过程的类型。CallType 的值可以是 Method、Get 或 Set。

Args
可选。ParamArray。参数数组,包含要传递给所调用的属性和方法的参数。

异常


异常类型  错误号  条件  
ArgumentException
5
无效 UseCallType 值;必须为 Method、Get 或 Set。


如果正在升级使用无结构错误处理的 Visual Basic 6.0 应用程序,请参见“错误号”一列。(您可以根据 Number 属性(Err 对象)比较错误号。)然而,如果可能,应当考虑用 Visual Basic 的结构化异常处理概述替换这种错误控制。

备注

CallByName 函数在运行时用来获取属性,设置属性或调用方法。

示例

在下面的示例中,第一行使用 CallByName 设置文本框的 Text 属性,第二行检索 Text 属性的值,第三行调用 Move 方法以移动文本框。

Visual Basic 复制代码
' Imports statements must be at the top of a module.
Imports Microsoft.VisualBasic.CallType

Visual Basic 复制代码
Sub TestCallByName1()
    'Set a property.
    CallByName(TextBox1, "Text", CallType.Set, "New Text")

    'Retrieve the value of a property.
    MsgBox(CallByName(TextBox1, "Text", CallType.Get))

    'Call a method.
    CallByName(TextBox1, "Hide", CallType.Method)
End Sub




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2