




已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Robot使用技巧和实用函数集合第一个:(转自网上)*功能说明:出现一个提示对话框,N秒后消失,比如说:提示等待一个窗口阿,有时候这个窗口没了,我也不知道脚本运行到什么地方了,提示一下挺好,也方便其他的测试员修改,而且,也不影响无人值守的操作例子:SQAMsgbox test,title,5Global iTime as IntegerDeclare Function TimedDlgFunc(id As String, Action As Integer, SuppValue As Long) As IntegerDeclare Function SQAMsgBox(sMsgText as String, Optional vMsgCaption as Variant, Optional vTimeOut as Variant) as IntegerFunction TimedDlgFunc(id As String, Action As Integer, SuppValue As Long) As Integer Static StartTime Dim EndTime Dim vTimeoutValue as Variant Select Case Action Case 1 Dialog box Initialization StartTime = Timer If StartTime + iTime = 86400 Then StartTime = 86400 - StartTime - iTime End If TimedDlgFunc = 1 Case 2 Button pushed or any control changed (except typing in text or combo box) Select Case SuppValue Case 1 DlgEnd -1 Case 2 DlgEnd 0 Case Else TimedDlgFunc = 0 End Select Case 3 Change in text or combo box contents TimedDlgFunc = 1 Case 4 Change of control focus TimedDlgFunc = 1 Case 5 Idle state (return 0 to prevent this being continually called) EndTime = Timer If (EndTime - StartTime) = iTime Then DlgEnd -1 End If vTimeoutValue = Format(iTime - (EndTime - StartTime), #.#) DlgText DlgControlID(txtTimeValue), CStr(vTimeoutValue) TimedDlgFunc = 1 End SelectEnd FunctionFunction SQAMsgBox(sMsgText as String, Optional vMsgCaption as Variant, Optional vTimeOut as Variant) as Integer Dim Result as Integer Dim TotalTime As Integer Dim sCmdText as String Dim sTimeoutText as String Dim vValue as Variant If IsMissing(vMsgCaption) Then vMsgCaption = SQAMsgBox End If If IsMissing(vTimeOut) Then vTimeOut = 20 seconds End If sTimeoutText = Timeout: - Begin Dialog dlgMsgBox 200, 80, vMsgCaption, .TimedDlgFunc GroupBox 5, 2, 190, 40, , .grpMsgTxt Text 15, 11, 175, 25, sMsgText, .txtMsgText Text 15, 47, 180, 20, sCmdText, .txtCmdText- Button 20, 60, 40, 14, &OK, .btnOK Button 140, 60, 40, 14, &Cancel, .btnCancel Text 78, 63, 30, 10, sTimeoutText, .txtTimeText Text 108, 63, 20, 10, vTimeout, .txtTimeValue End Dialog- Dim TimedDlg As dlgMsgBox iTime = CInt(vTimeOut) Result = Dialog(TimedDlg) If Result = 2 Then SQAMsgBox = sqaFail Else SQAMsgBox = sqaPass End If End Function*第二个:(来自于网上)*关于Recognition一共分为Recognition, ParentRecognition, FullRecognition1. To find the recognition method of the currently active window:Result=SQAGetProperty(.,Recognition,value)Returned value:Type=Window;Name=frmMain抓出来的是当前窗口的一些信息2. To find the immediate parent of the tree view item Bach:Result=SQAGetProperty(Name=treMain;ItemText=Bach,arentRecognition,value)Returned value:Type=TreeView;Name=treMain抓出来的是树型结构的父结点的信息3. To find the complete object path of the tree view item Bach, beginning with the desktop and ending with the target object itself:Result=SQAGetProperty(Name=treMain;ItemText=Bach,FullRecognition,value)Returned value:Type=Window;Name=frmMain;Type=TreeView;Name=treMain;Type=TVItem;ItemText=Bach抓出来的是树型结构中指向该控件的全部路径第三个:(来自于网上)Rational Robot中自动进行100次操作 Rational Robot中的SQA Basic与Basic语言极为类似,下面是一个for循环的例子,其中cstri()函数把整数转换成字符串。Sub Main Dim Result As Integer Dim i As Integer begin of for loop for i=1 to 100 step 1 InputKeys cstr(i*3) 这个地方设置输入值为I*3. next end of for loop End Sub识别控件需要相应的enabler,你现在测试的程序是delphi开发的应用软件,那么就要加载相应的delphi enabler!extension manager里边加入了delphi enabler,但是这个还是不能识别出delphi开发中用到的第三方控件或则其他控件!其实这里选择只是个打开使用真正的delphi enabler的开关,真正的delphi其实是一个sqasrvr.pas的单元文件,这个单元文件是识别控件的核心。ratitonal 2003里边的test enabler安装选项中包含delphi enabler,但是它需要你本机上安装delphi,才会把delphi enabler安装到你的机器上。否则不会出现。假如安装成功后,会在开始菜单中rational菜单下,rational test菜单下出现个delphi enabler(具体什么名字忘记了)的菜单项,通过它可以调用一个执行文件。执行文件的功能就是把sqasrvr.pas自动放到工程文件的头。delphi 工程文件只有加载了这个delphi enabler(核心 sqasrvr.pas)才会让robot识别,当然前提是你的extension manager中delphi选择了。出现一个提示对话框,N秒后消失,比如说:提示等待一个窗口阿,有时候这个窗口没了,我也不知道脚本运行到什么地方了,提示一下挺好,也方便其他的测试员修改,而且,也不影响无人值守的操作例子:SQAMsgbox test,title,5Global iTime as IntegerDeclare Function TimedDlgFunc(id As String, Action As Integer, SuppValue As Long) As IntegerDeclare Function SQAMsgBox(sMsgText as String, Optional vMsgCaption as Variant, Optional vTimeOut as Variant) as IntegerFunction TimedDlgFunc(id As String, Action As Integer, SuppValue As Long) As Integer Static StartTime Dim EndTime Dim vTimeoutValue as Variant Select Case Action Case 1 Dialog box Initialization StartTime = Timer If StartTime + iTime = 86400 Then StartTime = 86400 - StartTime - iTime End If TimedDlgFunc = 1 Case 2 Button pushed or any control changed (except typing in text or combo box) Select Case SuppValue Case 1 DlgEnd -1 Case 2 DlgEnd 0 Case Else TimedDlgFunc = 0 End Select Case 3 Change in text or combo box contents TimedDlgFunc = 1 Case 4 Change of control focus TimedDlgFunc = 1 Case 5 Idle state (return 0 to prevent this being continually called) EndTime = Timer If (EndTime - StartTime) = iTime Then DlgEnd -1 End If vTimeoutValue = Format(iTime - (EndTime - StartTime), #.#) DlgText DlgControlID(txtTimeValue), CStr(vTimeoutValue) TimedDlgFunc = 1 End SelectEnd FunctionFunction SQAMsgBox(sMsgText as String, Optional vMsgCaption as Variant, Optional vTimeOut as Variant) as Integer Dim Result as Integer Dim TotalTime As Integer Dim sCmdText as String Dim sTimeoutText as String Dim vValue as Variant If IsMissing(vMsgCaption) Then vMsgCaption = SQAMsgBox End If If IsMissing(vTimeOut) Then vTimeOut = 20 seconds End If sTimeoutText = Timeout: - Begin Dialog dlgMsgBox 200, 80, vMsgCaption, .TimedDlgFunc GroupBox 5, 2, 190, 40, , .grpMsgTxt Text 15, 11, 175, 25, sMsgText, .txtMsgText Text 15, 47, 180, 20, sCmdText, .txtCmdText- Button 20, 60, 40, 14, &OK, .btnOK Button 140, 60, 40, 14, &Cancel, .btnCancel Text 78, 63, 30, 10, sTimeoutText, .txtTimeText Text 108, 63, 20, 10, vTimeout, .txtTimeValue End Dialog- Dim TimedDlg As dlgMsgBox iTime = CInt(vTimeOut) Result = Dialog(TimedDlg) If Result = 2 Then SQAMsgBox = sqaFail Else SQAMsgBox = sqaPass End If End FunctionRobot手工编写GUI脚本如何获取对象识别方法和属性以计算器为例,下面的脚本是键盘输入“11”,然后关闭计算器。Sub Main Dim Result As Integer StartApplication C:WINNTsystem32calc.exe Window SetContext, Caption=计算器, InputKeys 1+1ENTER Window CloseWin, , End Sub Robot提供了获取对象识别方法和属性的利器Inspector。通过Robot toolsInspector.打开。现在使用SQAGetProperty命令获取11的结果值,并通过msgbox显示该值。 鼠标左键按住Inspectot工具栏上的“Select Objcet”按钮,然后选择计算器的结果放开鼠标左键。Inspectot中显示出对象的识别方法,鼠标左键点击工具栏上的“Copy recognition String”按钮拷贝识别方法,属性值通过选择Inspector左下角窗口中的Text属性,然后鼠标左键点击工具栏上的“Copy”按钮拷贝属性。修改后的脚本如下:Sub Main Dim Result As Integer Dim sum as Variant StartApplication C:WINNTsystem32calc.exe Window SetContext, Caption=计算器, InputKeys 1+1ENTER Result = SQAGetProperty (Type=Label;ObjectIndex=1, Text, sum) msgbox sum Window CloseWin, , End Sub VU脚本是类C语言,区分大小写。所以在获取识别方法和属性值时最好的方法就是使用Inspector。 自己编写脚本时,还有一个要注意的问题是窗口上下文,窗口上下文不正确会导致回放时找不到对象。上面的脚本中Window SetContext, Caption=计算器, 下面的操作都是在这个窗口上进行的。编写脚本时一定注意看一下窗口上下文是否正确。 也可以在识别方法中指定窗口上下文,如Result = SQAGetProperty (Type=Label;ObjectIndex=1, Text, sum)可以改成Result = SQAGetProperty (;Type=Window;Caption=计算器;Type=Label;ObjectIndex=1, Text, sum),第一个“”代表桌面,“Type=Window;Caption=计算器”是计算器窗口,第二个“”代表“Type=Window;Caption=计算器”和“Type=Label;ObjectIndex=1”是父子关系。这两个命令的效果完全一样。SQABasic头文件包含一系列的声明,头文件可以应用到一声明共有或则全局常量,变量和用户定义类型二声明自定义sub,procedures和function头文件中的声明可以应用到任何模块(脚本或者类库文件)。用$include关键字,放在模块开始的地方-例如: $include “global.sbh”SQABasic头文件类型 Sqabasic支持两种头文件类型: 一 头文件保存在sqabasic路径。不用指定任何路径信息就可以在本工程或者其他工程中应用他们二 工程头文件可以保存在TMS_Script文件夹中。不用指定任何路径信息就可以在同一个工程中处理。这两种SQABasic头文件都有同样的扩展名- .sbh 库文件 库文件包含一个或者更多供procedure从其它文件调用的sub,procedure和function。一SQABasic库文件(扩展名为.sbl或则.rec)注意,.rec文件可以作为脚本文件或者库文件,但是.sbl只能被用作库文件。二动态连接库文件(扩展名.dll)下边的表格这几种类库文件不同的总结:.sbl.rec.dll位置SQABasic路径当前工程文件中Datastore(文件夹 TMS_Script)TMS_Script/dll文家夹或则其他位置范围在SQABasic路径中,对所有工程文件都可用对同一个工程所有脚本可用依靠位置验证点不支持支持标准的robot验证点支持自定义验证点任何.rec文件都能作为库文件。不管怎样,如果一个.rec文件作为脚本(可以从robot中直接运行或者用callscript命令),他必须有一个main过程。在SQABasic库文件中声明过程 如果在SQABasic过程中有一个自定义的过程,你声明类文件的方法同样适用声明过程。下边的例子是在sqabasic库文件中(mylib.sbl)声明一个自定义过程(mysub): Declare Sub MySub Basiclib “MyLib”( arg1 as string,arg2 as integer)一关键字basiclib,表示过程mysub在一个sqabasic库文件中二库文件的名字“mylib”,这里不需要写扩展名(.sbl或者.rec)备注:basiclib关键字特指.sbx库文件的声明(和.dll库文件相对),这里不需要也不推荐带有.sbx扩展名的声明。什么地方声明SQABasic库文件 可以在任何位置声明SQABasic库文件一在脚本或者其他库文件,仅在模块中应用过程二头文件中,用道的模块库文件包含不需要指定的例程或者include头文件在dll文件声明过程文件 如果在dll文件的自定义过程,声明过程同样可以声明dll文件。下边是dll文件中(mydll.dll)声明自定义过程(mysub)的例子: declare sub mysub lib “mydll”(byval arg1 as string,Byval arg2 as integer)一声明中加入Lib关键字,表示声明的过程在dll文件中(相对于.sbl或者.rec sqabasic库文件)二库文件名字(mydll),跟随库指定的名称三参数声明通常包括关键字byval(参数声明包括任何关键字)如果编译位置在sqabas32路径或在系统路径的库文件(.dll),你不用特别声明路径。如果库文件不再sqabas32或者在系统路径,你需要制定路径,比如 Declare Sub MySub Lib “E:MyDll”(byval arg1 as string,Byval arg2 as integer)在什么地方声明dll文件 你可以声在任何为指声明dll文件:1. 脚本或者sqabasic库文件,要用过程的模块2. 头文件,任何模块指定的头文件SQABasic路径 Sqabasic路径是robot保存和寻找sbl库文件和头文件的地方,用户在robot中也可以定义。一旦你在robot中指定sqabasic路径,这个路径是固定的。不管怎样,robot自动设置sqabasic路径,当下列条件是真的时候: i. 仍没有明确在robot中定义sqabasic ii. 已经在rational Aministrator建立新的工程和数据仓库 iii. 打开最近创建的工程和数据仓库当上边所有条件为真的时候,robot自动在新工程和数据仓库中设置sqabasic路径到下列位置: NewProjectNewDatastoreDefaultTestScriptDatastoreTMS_ScriptSQABas32设置步骤: 1) 点Tools-General Options2) 点Preferences页面3) 在SQABasic路径中输入路径Rational test早期版本没有提供菜单选项来设置sqabasic路径 参阅sqa common directory片断指导使用头文件和库文件 推荐下边使用库文件方法:a) 自定义函数或者过程应该使用有同样文件名字的头文件(.sbh)和库文件(.sbl),比如DataFunctions.sbh和DataFunctions.sbl。这个过程和函数在头文件中定义(指定声明头文件)和在库文件中定义。看下边的例子b) 分离头文件(参阅常量头文件)用于包含常量,变量和用户定义类型用于脚本或者库文件调用。头文件用同样的文件名字后边附加_x或则_C(附加是早期命名规定)。注意包含常量和变量的头文件必须加入到声明头文件和库文件之前。(DataFunctions.sbh和DataRational Robot中文件操作(一) Rational Robot中提供了一个文件操作命令,语法如下:Open filename$ For mode Access access lock As # filenumber% Len = reclen这里我们把它的语法分为两部分,因为这个文件操作命令有两种文件操作模式,一种是顺序文件,一种是随机文件。下边是对顺序文件操作的语法:Open filename$ ?For Input |Output |Append As #filenumber Len = buffersize 参数说明:说明:(1)参数filename$表示要打开的文件名,文件名可以包含有驱动器和目录(2)Input Output 和Append用于设置顺序文件的打开方式。其中,Input表示从打开的文件中读取数据。以这种方式打开文件时,文件必须存在,否则会产生错误。Output表示向打开的文件中写入数据。以这种方式打开文件时,文件中原有的数据将被覆盖,新的数据将从文件开始写入。如果文件不存在,则创建一个新文件。Append表示向打开的文件中添加数据。以这种方式打开时,文件中原有的数据将被保留,新的数据将从文件为开始添加。如果文件不存在,则创建一个新文件。(3)As#filenumber 子句用于为打开的文件指定文件号.对文件进行读写操作时,要用文件号表示该文件.文件号是介于1511之间的整数,既可以是数字,又可以是变量.也可以省略不用.(4)当在文件与程序之间拷贝数据时,Len=buffersize子句指定缓冲区的字符数.例子:Open “c:test.dat For Output As 1Open “c:test.dat For Output As 1 这两句代码在c盘所在目录下创建了一个名为test.dat的文本文件,分配文件号为1.Open “c:test.dat?For Input As #filenumber 这条语句是从文本文件中读取数据.Open App.Path + test.dat For Append As #filenumber?这条语句则是向文本文件中添加数据随机文件的操作:操作随机文件之前,首先必须定义用于保存数据项的记录类型.该记录是用户自定义数据类型,他们是随机文件中存储数据的基本结构.例如:Type StudentNo As IntegerName As String * 20age As IntegerEnd TypeDim Stud As Student 定义一个可以存放学生材料的变量 随机文件中,所有的数据都将保存到若干个结构为Student类型的记录中, 而从随机文件中读出的数据则可以存放到变量Stud中.之后我们就可以打开并读写文件了.随机文件的操作语法格式:Open filename For Random as #filenumber Len = Reclength 说明:(1)参数filename 和filenumber 分别表示文件名或文件号.(2)关键字Random 表示打开的是随机文件(3)Len子句用于设置记录长度,长度由参数Reclength指定.Reclength的值必须大于0,而且必须与定义的记录结构的长度一致.计算记录长度的方法是将记录结构中每个元素的长度相加.例如前面声明的Student的长度应该是2+20+2=24字节.打开一个记录类型为Student 的随机文件的方法是:Open c:Student.txt For Random As #1 Len = 25 这里还有一种文件操作方式二进制文件,下边是他的语法格式:Open pathname For Binary As #filenumber 说明:(1) 参数filename 和filenumber 分别表示文件名或文件号.(2)关键字Binary 表示打开的是二进制文件(3)对于二进制文件,不能指定字节长度.每个打开的二进制文件都有一个自己的指针,文件指针是一个数字值,指向下一次读写操作的文件中的位置.二进制文件中的每个”位置”对应一个数据字节,因此,有n个字节的文件,就有1到n个位置.我们可以用Seek()函数返回当前的文件指针位置(即下一个要读写的字节 );用Loc()函数返回上一次读写的字节位置,除非用Seek语句移动了指针,Loc()返回值总比Seek()的小1.我们来看下面的例子:Open “路径:student.txt” for Binary as #1? ?该语句用二进制的方式打开了student.txt文件.Rational Robot中文件操作(二) 二)写文件1、 顺序文件写顺序文件我们可以用Write # 和Print #语句向一个已经打开的文件中写入数据.下面是他们的格式和说明:Print # 的语法格式:Print # 文件号,变量列表 例如,将文本框中的文本写到文件中,代码如下:Open file.txt For Output As #filenumInput #filenum, text1.text Write # 语句的语法格式:Write # 文件号,变量列表 说明:用Write # 语句写入的信息便于以后用Input #语句来读取数据,因为Write #语句自动将写入到文件中的信息用逗号分开,并为字符串数据加上双引号.例如:Open student.txt For Output As #filenumWrite #filenum, 张三, 初一年级, 14Write #filenum, 李四, 职业高中, 18 2、 随机文件向随机文件中写入数据,使用Put语句.语法格式如下:Put # FileNum ,RecNum,UserType 说明:(1) FileNum 是要打开的文件号;RecNum是要写入的记录号,若省略,则再上一次用Get 和Put语句所读写过的记录的后一条记录中写入,如果没有执行过Get 和Put语句,就从第一条记录开始(2)UserType 是包含要写入数据的用户自定义的数据类型变量.例如:我们向前面的student.txt文件中的第5个记录写入数据,可用这些语句:stud.No = 0301stud.Name = “王武”stud.Age =20Put #1 ,5,stud 如果要插入的数据不只一两条的话,首先要确定文件和每条记录的长度,这样就可以计算出文件中究竟有多少条记录.我们可以用Lof()函数返回文件的长度,Len()函数返回每个记录的长度,计算文件中的记录个数可以用文件的长度除以给个记录的长度.示例如下:Nextrec= (Lof(1)Len(UserType)+1Put #1,Nextrec,UserType 3、二进制文件下面是以二进制方式写入文件的语句格式及其说明:格式:Put #fileNumber ,Pos, Var 功能: 用二进制方式,从文件的中指定的位置开始写入,所给变量长度的数据说明:(1)FileNumber是以二进制方式打开的文件号.(2)Pos用来指定写操作发生时的字节位置,若省略,则使用当前文件指针位置.(3)Var是用来存放写入的数据的变量.该语句会自动根据var变量包含的字节长度写入文件,如果Var是一个可变长度的字符串变量,则传送的字节数等于Var中目前的字节数.使用方法可参考二进制文件的读操作.以上是Rational Robot中的文件操作的总结,欢迎大家交流!Rational中DataPool的介绍与实际应用 本文对datapool进行简单介绍的同时结合实际功能测试和性能测试的来讲界使用datapool。希望对广大的软件测试人员有帮助。由于写作DataPool是一种测试数据集,在测试脚本回放的时候提供给脚本的变量。datapool可以由rational产品robot或TestManager创建,下边的表格列举出在robot和testmanager中可以对datapool执行的操作:操作RobotTestManager在测试脚本中自动建立datapool创建测试脚本并产生自动数据修改vu脚本中的datapool设置修改datapool字段定义并修改测试数据创建并修改数据类型管理datapool比如改名或者拷贝倒入到出数据倒入数据备注:rational中datapool有两种文件:txt和csv文件,创建datapool成功后会保存在盘符:工程文件目录TestDatastoreDefaultTestScriptDatastoreTMS_Datapools文件夹下测试数据保存在有csv扩展名的文本文件中,所有字段信息保存在后缀名为spc的文件中,该文件由testmanager管理。datapool有两种创建方法,一种是在testmanager中建立,一种robot录制vu脚本时自动建立同名datapool,只有在robot中tools-session record options, 设置Generator页面general的use datapool选项,才可以生效。下边分别介绍这两种创建和使用方法:一建立datapool:1启动Rational TestManager;2ToolsManageDatapool,点击New,输入数据池名称点“确定”;3在打开的Data Type Specification中添加字段定义;(字段定义说明见后)4生成数据Generate Data(产生大量数据,这里默认产生100个数据)5修改其中的数据Edit DataPool data其中字段定义说明:1) Name 指的是数据池列标题名它与测试脚本中变量相一致。如果你改变了数据池列名,也必须保证测试脚本中的变量做相应的改变;如果你不是在Rational测试环境下建立的数据池然后导入它,TestManager自动给数据池列分配缺省的名称。也必须保证测试脚本中的变量与其相一致。你可以用ime给datapool字段起多字节的名字2) Type 标准的或用户定义的数据类型都按名称向数据池列提供其值。犹如建立数据库,先建立字段名,后改动类型。制定数据池列的数据类如下操作:a、选择标准类型或已存在的用户定义数据类型,点击当前显示的数据类型名称,然后从列表中选择新的数据类型。b、可以选择rational中的标准的数据类型。c、如果想自定义一个类型名称而不是进行选择,在用户定义数据类型前输入星号,如:*MyData;d、建立新的用户定义数据类型,输入数据类型名称(不要带*),然后点击Return。在你点击了Yes确定你想要建立用户定义的数据类型,例如:建立新的column,输入列名,输入DemoType(自定义类型),保存。这时会出现数据类型属性编辑对话框(我向Description中输入描述信息,确定按钮不可用,可能是rational的bug,不知道告诉ratioanl有没有奖励),确定,出现另一个数据类型属性编辑界面,输入测试数据,退出。选中该行生成数据,testmanager会自动创建你输入的数据。e、建立新的用户定义数据类型。3) Sequence 数据类型的值的顺序被写入数据池列中。只要从中进行选择即可:Random随机向数据池列中写入数字和字母的值。Sequential顺序写出,如0,1,2,3,. Sequential仅仅支持数字值(包括日期和时间) 和生成的用户定义的日期类型。当你选择数字类型,必须确定其最大和最小的范围,间隔必须大于0;Unique即其中的值是唯一的。也可定义最大最小值。4) Repeat 即出现在数据池列的时间,Repeat不能为0。要想设置有符号的整数和用户定义的数据类型的唯一性,设置Reapeat为1。当定义唯一值时,确定生成的数在你定义的范围之内。5) Length 数据池列中存在的最大的数。这个长度包括小数点和负号。6) Decimals 定义最大的浮点数的小数位,最大的设置是6位。7) Interval 如果你在数据池列中设置了间隔,那么将按照你设置的顺序,而顺序变化。最小的间隔是1,最大的间隔是999999在数字数据类型下选择了Sequence,并定义了最大和最小范围,间隔必须大于0。这设置仅仅在数字设置时有效。8) Minimum 确定数字最小值这设置仅仅在数字设置时有效。9) Maximum 确定数字最大值这设置仅仅在数字设置时有效。10) Seed 是Rational Test为了计算随机值的数。相同的种子数产生相同的随机数,要改变随机顺序,改变种子数。11) Data File 用户定义的数据类型的路径,这个路径是自动付给你的,不能进行修改。数据类型文件存放在你的项目文件中的Data Type目录,不能进行直接修改。
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全法培训目的课件
- 2025贵州雍福产业发展投资(集团)有限公司第一批招聘5人考前自测高频考点模拟试题及答案详解(历年真题)
- (2025年)职业技能鉴定考评人员考试试题及答案
- 职业技能鉴定试题及答案:水文水井钻探工
- 2025-2030工业机器人关键零部件技术突破与市场需求预测报告
- 安全水上救生员培训课件
- 转化项目申请书
- 在校入籍申请书范文
- 企业贷款续贷申请书
- 科研立项申请书范本
- 贴地砖协议书范本
- 机泵基础知识培训课件
- 殡葬基础知识培训课件
- 湘教版七年级上册数学第一章有理数单元测试卷(含答案)
- 小学教育专业认证汇报
- 如何撰写课题开题报告课题研究方案
- 非计划性拔管的预防与护理
- 第3课 公民意味着什么 第一课时 公民身份从何而来 教学设计-2024-2025学年道德与法治六年级上册统编版
- 2024年达州市招聘事业单位工作人员笔试真题
- 2025年工程测量赛项理论考试题库(含答案)
- 《烘焙技巧甜点制作》课件
评论
0/150
提交评论