丑娘娘这部网剧梦幻唐朝女一号的女一号是谁呢?

【LoadRunner 调试问题 8】如何对参数化文件里的中文值做URLEncode处理 - 简书
【LoadRunner 调试问题 8】如何对参数化文件里的中文值做URLEncode处理
LoadRunner 11
问题:如果参数化文件的值包含中文,拼到接口请求里发送到服务端,解析会失败。原因:服务端请求需要做 URLEncode,不能直接拼接中文字符串;解决方案:LoadRunner 的自带函数 web_convert_param 可以做这种转换;示例:lr_convert_string_encoding(lr_eval_string("{city}"),LR_ENC_SYSTEM_LOCALE,LR_ENC_UTF8,"UnicodeString"); //此时city是一个中文城市列表的参数,把它转换为utf-8,存入UnicodeString参数中lr_save_string (lr_eval_string("{UnicodeString}"),"test" ); //把UnicodeString参数的值又覆盖回test参数,前2步相当于完成了city参数的汉字到utf-8的转换web_convert_param("test", "SourceEncoding=PLAIN", "TargetEncoding=URL", LAST ); //这一步把city的参数值从utf-8又转换到url编码你在接口的URL请求里,可以引用这个{test},如下:city={test} ;执行之后,在Log里可以看到如下信息:city=%E5%90%88%E8%82%A5这样,发送到服务端,就可以被正常解析了。
我要这天,再遮不住我眼;
要这地,再埋不了我心;
要这众生,都明白我意;
要那诸佛,都烟消云散;
14 年测试 + 11 年项目管理 + 11 年团队管理 = 一个测试老兵(订阅号)
微信号:suntester
我已委托“维权骑士”()为我的文章进行维权行动
如需转载前往/material/author?id=32033获取合法授权温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!&&|&&
LOFTER精选
网易考拉推荐
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
阅读(1052)|
用微信&&“扫一扫”
将文章分享到朋友圈。
用易信&&“扫一扫”
将文章分享到朋友圈。
历史上的今天
loftPermalink:'',
id:'fks_',
blogTitle:'如何从日志中查看loadrunner参数化的过程',
blogAbstract:'由于用户行为的不确定性,因此需要将某些用户行为参数化,设置几种不同的情况进行测试。例如在帮助手册中将预定航班的座位选项设置为“过道,窗口及无”三种模式。问题:&& & & &参数化的步骤这里不再重复,但当设置完参数后再次运行,在replay log中有可能找不到设置的参数。解决方法:&& & & &需要在run-time setting-&log中选中extended log及下方的parameter subsitution项;',
blogTag:'',
blogUrl:'blog/static/',
isPublished:1,
istop:false,
modifyTime:0,
publishTime:7,
permalink:'blog/static/',
commentCount:1,
mainCommentCount:1,
recommendCount:1,
bsrk:-100,
publisherId:0,
recomBlogHome:false,
currentRecomBlog:false,
attachmentsFileIds:[],
groupInfo:{},
friendstatus:'none',
followstatus:'unFollow',
pubSucc:'',
visitorProvince:'',
visitorCity:'',
visitorNewUser:false,
postAddInfo:{},
mset:'000',
remindgoodnightblog:false,
isBlackVisitor:false,
isShowYodaoAd:false,
hostIntro:'',
hmcon:'1',
selfRecomBlogCount:'0',
lofter_single:''
{list a as x}
{if x.moveFrom=='wap'}
{elseif x.moveFrom=='iphone'}
{elseif x.moveFrom=='android'}
{elseif x.moveFrom=='mobile'}
${a.selfIntro|escape}{if great260}${suplement}{/if}
{list a as x}
推荐过这篇日志的人:
{list a as x}
{if !!b&&b.length>0}
他们还推荐了:
{list b as y}
转载记录:
{list d as x}
{list a as x}
{list a as x}
{list a as x}
{list a as x}
{if x_index>4}{break}{/if}
${fn2(x.publishTime,'yyyy-MM-dd HH:mm:ss')}
{list a as x}
{if !!(blogDetail.preBlogPermalink)}
{if !!(blogDetail.nextBlogPermalink)}
{list a as x}
{if defined('newslist')&&newslist.length>0}
{list newslist as x}
{if x_index>7}{break}{/if}
{list a as x}
{var first_option =}
{list x.voteDetailList as voteToOption}
{if voteToOption==1}
{if first_option==false},{/if}&&“${b[voteToOption_index]}”&&
{if (x.role!="-1") },“我是${c[x.role]}”&&{/if}
&&&&&&&&${fn1(x.voteTime)}
{if x.userName==''}{/if}
网易公司版权所有&&
{list x.l as y}
{if defined('wl')}
{list wl as x}{/list}君,已阅读到文档的结尾了呢~~
广告剩余8秒
文档加载中
如何对Loadrunner脚本进行参数化,loadrunner脚本参数化,loadrunner如何写脚本,loadrunner脚本编写,loadrunner录制脚本,loadrunner脚本语言,loadrunner java脚本,loadrunner12录制脚本,loadrunner脚本实例,loadrunner脚本
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
如何对Loadrunner脚本进行参数化
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer--144.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口热门搜索:
您的位置: -&
软件教程分类查找
非常抱歉!2345软件大全没能为您提供完善服务,万分感谢能得到您的指点!
您的建议:
精品软件课程
人气:370166
Cool Edit是一个非常出色的数字音乐编辑器
人气:95420
LoadRunner是一种预测系统行为和性能的负载
人气:2160314
快播播放器(Qvod Player)是一款基于准视频
人气:695014
腾讯QQ支持在线聊天、视频电话、点对点断点
小游戏推荐
loadrunner的参数化
出处:2345软件大全
人气:5747
核心提示:本文主要包括如下内容:理解参数的局限性、建立参数、定义参数的属性、理解参数的类型、为局部数据类型设置参数的属性、为数据文件设置参数的属性、从已经存在的数据库中引入数据。
  本文主要包括如下内容:理解参数的局限性、建立参数、定义参数的属性、理解参数的类型、为局部数据类型设置参数的属性、为数据文件设置参数的属性、从已经存在的数据库中引入数据。
  除了GUI,以下的内容适合于各种类型的用户脚本。
  一、关于参数的定义
  在你录制程序运行的过程中,脚本生成器自动生成由函数组成的用户脚本。函数中参数的值就是在录制过程中输入的实际值。
  例如,你录制了一个Web应用程序的脚本。脚本生成器生成了一个声明,该声明搜索名称为"UNIX"的图书的数据库。当你用多个虚拟用户和迭代回放脚本时,也许你不想重复使用相同的值"UNIX"。那么,你就可以用参数来取代这个常量。结果就是你可以用指定的数据源的数值来取代参数值。数据源可以是一个文件,也可以是内部产生的变量。
  用参数表示用户的脚本有两个优点:
  ① 可以使脚本的长度变短。
  ② 可以使用不同的数值来测试你的脚本。例如,如果你企图搜索不同名称的图书,你仅仅需要写提交函数一次。在回放的过程中,你可以使用不同的参数值,而不只搜索一个特定名称的值。
  参数化包含以下两项任务:
  ① 在脚本中用参数取代常量值。
  ② 设置参数的属性以及数据源。
  参数化仅可以用于一个函数中的参量。你不能用参数表示非函数参数的字符串。另外,不是所有的函数都可以参数化的。
  二、参数的创建
  可以指定名称和类型来创建参数。不存在对脚本中参数个数的限制。在Web程序的用户脚本中,你可以使用如下过程在基于文本的脚本视图中创建参数。或者,也可以在基于图标的树形视图中创建参数。
  在基于文本的脚本视图中创建一个参数:
  1、 将光标定位在要参数化的字符上,点击右键。打开弹出菜单。
  2、 在弹出菜单中,选择"Replace with a Parameter"。选择或者创建参数的对话框弹出。
  3、 在"Parameter name"中输入参数的名称,或者选择一个在参数列表中已经存在的参数。
  4、 在"Parameter type"下拉列表中选择参数类型。
  5、 点击"OK",关闭该对话框。脚本生成器便会用参数中的值来取代脚本中被参数化的字符,参数用一对"&&"括住。
  注意:在参数化CORBA或者General-Java 用户脚本的时候,必须参数化整个字符串,而不是其中的部分。另外注意:除了Web或者WAP,缺省的参数括号对于任何脚本都是 "&&"。你可以在"General Options"对话框中的
  "Parameterization"标签(Tools&General Options)中定义参数括号种类。
  6、 用同样的参数替换字符的其余情况,选中参数,点击右键,弹出菜单。从弹出的菜单中,选择"Replace More Occurrences"。搜索和替换对话框弹出。"Find What"中显示了你企图替换的值。"Replace With"中显示了括号中参数的名称。选择适当的检验框来匹配整个字符或者大小写。如果要搜索规则的表达式(.,!,?等等),选中"Regular Expression"检验框,然后点击"Replace"或者"Replace All"。
  注意:小心使用"Replace All",尤其替换数字字符串的时候。脚本生成器将会替换字符出现的所有情况。
  7、 如果想用以前定义过的参数来替换常量字符串的话,选中该字符串,点击右键,然后选择"Use Existing Parameter",子菜单"Use ExistingParameters"弹出。从子菜单"Use Existing Parameters"选择参数,或者用
  "Select from Parameter List"来打开参数列表对话框。
  注意:如果用以前定义过的参数来替换常量字符串的话,那么,使用"Parameter List"非常方便。同时,还可以查看和修改该参数的属性。
  8、 对于已经用参数替换过的地方,如果想取回原来的值,那么,就在参数上点击右键,然后选择"Restore Original value"。
  在Web用户脚本的树形视图中创建参数:
  1、将光标定位在企图参数化的地方,点击右键,从弹出的菜单中选择"Properties"。则相关的属性对话框打开。
  2、点击在要参数化的参量的旁边的"ABC"形状的图标。"Select or CreateParameter"对话框打开。
  3、在"Parameter name"中输入参数的名称,或者从列表中选择一个已经存在的参数。
  4、在"Parameter type"中输入参数的类型。
  5、点击"OK"关闭该对话框。用户脚本生成器会用参数来替换最初的字符串常量,并用一个表格形状的图标替换"ABC"形状的图标。
  6、要恢复参数化以前的值,点击图标,然后从弹出的菜单中选择"UndoParameter",则以前的值便会重现。
  三、定义参数的属性
  创建参数完成后,就可以定义其属性了。参数的属性定义就是定义在脚本执行过程中,参数使用的数据源。在Web用户脚本中,你既可以在基于文本的脚本视图中定义参数属性,也可以在基于图标的树形视图中定义参数属性。下面的过程将教你如何在基于本文的脚本视图中定义参数属性。
  在基于文本的脚本视图中定义参数属性步骤:
  1、 在参数上点击右键,有菜单弹出。
  2、 在弹出的菜单中,选择"Parameter Properties"。参数属性对话框打开,显示和当前参数类型相关的属性。
  3、 输入参数的属性值。
  4、 点击"Close"关闭参数属性对话框。
  在Web用户脚本的树形视图中定义参数的属性:
  1、 将关标定位在参数上,然后点击右键,选择"Properties"。属性对话框打开。
  2、 点击要定义属性的参数旁边的表格形状按钮,点击右键,选择"ParameterProperties"。参数属性对话框打开,和参数类型相关的属性显示出来。
  3、 输入参数的属性。
  4、 点击"Close"关闭参数属性对话框。
  使用参数列表:
  使用参数列表可以在任意时刻查看所有的参数,创建新的参数、删除参数,或者修改已经存在参数的属性。
  1、 点击参数列表按钮或者用"Vuser&Parameter List"。参数列表对话框打开。
  2、 要创建新的参数,点击"New"按钮。新的参数则被添加在参数树中,该参数有一个临时的名字,你可以给它重新命名,然后回车。设置参数的类型和属性,点击"OK",关闭参数列表对话框。
  注意:不要将一个参数命名为"unique",因为这个名称是用户脚本生成器本身的。用户脚本生成器创建新的参数,但是不会自动用该参数在脚本中替换任意选中的字符串。
  3、 要删除已有的参数,那么,要先从参数树中选择该参数,点击"Delete",然后确认你的行为即可。
  4、 要修改已有参数,那么,要先从参数树中选择该参数,然后编辑参数的类型和属性。
  四、理解参数的类型
  在你定义参数属性的时候,要指定参数值的数据源。你可以指定下列数据源类型的任何一种:
  Internal Data―― 虚拟用户内部产生的数据。
  Data Files ――存在于文件中的数据。可能是已存在的文件或者是用脚本生成器新创建的。
  User-Defined Functions―― 调用外部DLL函数生成的数据
  Internal Data包括以下几种:
  1、 Date/Time
  Date/Time用当前的日期/时间替换参数。要指定一个Date/Time格式,你可以从菜单列表中选择格式,或者指定你自己的格式。这个格式应该和你脚本中录制的Date/Time格式保持一致。
  2、 Group Name
  Group Name 用虚拟用户组名称替换参数。在创建scenario的时候,你可以指定虚拟用户组的名称。当从用户脚本生成器运行脚本的时候,虚拟用户组名称总是None。
  3、 Load Generator Name
  Load Generator Name用脚本负载生成器的名称替换参数。负载生成器是虚拟用户在运行的计算机。
  4. Iteration Number
  Iteration Number用当前的迭代数目替换参数。
  5、 Random Number
  Random Number用一个随机数替换参数。通过指定最大值和最小值来设置随机数的范围。
  6、 Unique Number
  Unique Number用一个唯一的数字来替换参数。你可以指定一个起始数字和一个块的大小。
  7、 Vuser ID
  Vuser ID用分配给虚拟用户的ID替换参数,ID是由Loadrunner的控制器在scenario运行时生成的。如果你从脚本生成器运行脚本的话,虚拟用户的ID总是-1。
  五、数据文件
  数据文件包含着脚本执行过程中虚拟用户访问的数据。局部和全局文件中都可以存储数据。可以指定现有的ASCII文件、用脚本生成器创建一个新的文件或者引入一个数据库。在参数有很多已知值的时候数据文件非常有用。数据文件中的数据是以表的形式存储的。一个文件中可以包含很多参数值。每一列包含一个参数的数据。列之间用分隔符隔开,比如说,用逗号。
  对数据文件设置参数属性
  如果使用文件作为参数的数据源,必须指定以下内容:文件的名称和位置、包含数据的列、文件格式,包括列的分隔符、更新方法。
  如果参数的类型是"File",打开参数属性(Parameter Properties)对话框,设置文件属性如下:
  1、 在"File path"中输入文件的位置,或者点击"Browse"指定一个已有文件的位置。缺省情况下,所有新的数据文件名都是"parameter_name.dat",注意,已有的数据文件的后缀必须是.dat。
  2、 点击"Edit"。记事本打开,里面第一行是参数的名称,第二行是参数的初始值。使用诸如逗号之类的分隔符将列隔开。对于每一新的表行开始一行新的数据。
  注意:在没有启动记事本的情况下如果想添加列,就在参数属性对话框中点击"Add Col",那么"Add new column"对话框就会弹出。输入新列的名称,点击"OK"。脚本生成器就会添加该列到表中,并显示该列的初始值。
  3、 在"Select Column"部分,指明包含当前参数数据的列。你可以指定列名或者列号。列号是包含你所需要数据的列的索引。列名显示在每列的第一行(row 0)。
  4、 在"Column delimiter"中输入列分隔符,你可以指定逗号、空格符等等。
  5、 在"First data line"中,在脚本执行的时候选择第一行数据使用。列标题是第0行。若从列标题后面的第一行开始的话,那就在"First data line"中输入1。如果没有列标题,就输入0。
  6、 在"Select next row"中输入更新方法,以说明虚拟用户在脚本执行的过程中如何选择表中的数据。方法可以是:连续的、随机的、唯一的、或者与其它参数表的相同行。
  6.1、 顺序(Sequential):该方法顺序地给虚拟用户分配参数值。如果正在运行的虚拟用户访问数据表的时候,它会取到下一行中可用的数据。
  6.2、 随机(Random):该方法在每次迭代的时候会从数据表中取随机数
  6.3、 使用种子取随机顺序(Use Random Sequence with Seed):如果从Loadrunner的控制器来运行scenario,你可以指定一个种子数值用于随机顺序。每一个种子数值在测试执行的时候代表了一个随机数的顺序。无论你何时使用这个种子数值,在scenario中同样的数据顺序就被分配给虚拟用户。如果在测试执行的时候发现了一个问题并且企图使用同样的随机数序列来重复测试,那么,你就可以启动这个功能(可选项)。
  6.4、 唯一(Unique):Unique方法分配一个唯一的有顺序的值给每个虚拟用户的参数。
  6.5 、与以前定义的参数取同一行(Same Line As &parameter&):该方法从和以前定义过的参数中的同样的一行分配数据。你必须指定包含有该数据的列。在下拉列表中会出现定义过的所有参数列表。注意:至少其中的一个参数必须是Sequential、Random或者Unique。
  如果数据表中有三列,三个参数定义在列表中:id1,name1和title1,如
  下:。
  ID Name Title
  132 Kim Manager
  187 Cassie Engineer
  189 Jane VP
  对于参数id1,你可以指示虚拟用户使用Random方法,而为参数name1和
  title1就可以指定方法"Same Line as id1"。所以,一旦ID"132"被使用,
  那么,姓名(Name)"Kim"和职位(Title)"Manager"同时被使用。
  7、Updta value on数据的更新方法
  7.1、Each iteration――每次反复都要取新值
  7.2、Each occurrence――只要发现该参数就重新取值
  7.3、Once――在所有的反复中都使用同一个值
  8、When out of values超出范围:(选择数据为unique时才可用到)
  8.1、Abort Vuser――中止
  8.2、Continue in a cyclic manner――继续循环取值
  8.3、Continue with last value――取最后一个值
  9、Allocate Vuser values in the Controller在控制器中分配值:(选择数据
  为unique时才可用到)
  9.1、 Automatically allocate block size――自动分配
  9.2、Allocate()values for each Vuser――指定一个值
  六、从已存在的数据库中导入数据
  Loadrunner允许你利用参数化从已经存在的数据库中导入数据。可以使用下
  列两种方式之一:
  1、 使用Microsoft Query(要求在系统上先安装MS Query)。
  2、 指定数据库连接字符串和SQL语句。
  用户脚本生成器在从数据库中导入数据的过程中提供了一个向导。在向导中,你指明如何导入数据-通过MS Query创建查询语句或者直接书写SQL语句。在导入数据以后,以.dat为后缀并作为正规的参数文件保存。要开始导入数据库中数据的过程,在参数属性对话框中点击"Data Wizard",则,数据库查询向导弹出。
  要创建新的查询
  1、 选择"Create new query"。如果需要MS Query的帮助,选择"Show me how to use Microsoft Query",然后点击"Finish"。
  如果你还没有安装Microsoft Query,Loadrunner会提示你这个功能不可用。在进行之前,从Microsoft Office中安装MS Query。
  2、 在Microsoft Query中遵循以下步骤,导入期望的表和列。
  3、 在完成数据的导入后,选择"Exit and return to Virtual User Generator",然后点击"Finish"。在参数属性对话框中数据库记录以data文件的形式显示出来。
  要在MS Query中编辑并查看数据,选择"View data or edit in Microsoft Query"。若要结束,则选择"File&Exit and return to Virtual User Generator"返回到脚本生成器。
  4、 在"Select Column"部分,指定包含当前参数数据的列可以指定列号或者列名。注意:列标题默认为第0行(row 0)。
  5、 从"Select next row"列表中选择一个更新方法来告诉虚拟用户在脚本指定的过程中如何选择表中的数据。可选项是:Sequential、Random、Unique或者Same Line As。其中每一项的含义文章前面已经讲述,就不再赘述。
  6、 如果选择"Advance row each iteration",虚拟用户在每次迭代的时候会使用新的一行的数据而不是重复同样的数据。
  要指定数据库连接或者SQL语句
  1、 选择"Specify SQL Statement",然后点击"Next"。
  2、 点击"Create"指定一个新的连接字符串。选择数据源的窗口弹出。
  3、 选择已有的数据源,或者点击"New"创建一个新的数据源。向导将提示你
  穿过创建ODBC数据源的过程。在完成后,连接字符串就会在连接字符串框中显示出来。
  4、 在SQL框中,输入或者粘贴SQL语句。
  5、 点击"Finish"继续SQL语句并导入数据。数据库记录将以data文件的形式显示在参数属性框中。
  6、 在"Select Column"部分中,指定包含当前参数数据的列。你可以指定列号或者列名。
  7、 从"Select next row"列表中选择一个更新方法来告诉虚拟用户在脚本指
  定的过程中如何选择表中的数据。可选项是:Sequential、Random、Unique或者Same Line As。
  8、 如果从Update out of values中,选择"each iteration",虚拟用户在每次迭代的时候会使用新的一行的数据而不是重复同样的数据。
相关教程推荐
相关软件推荐
资源统计:无插件软件:186479个 无病毒软件:186791个 昨日已处理128个带插件、病毒的软件
本站总软件:186791个 软件总下载次数:22.833亿次
软件教程文章:103152篇 总浏览次数:3.365亿次博客访问: 360334
博文数量: 93
博客积分: 2570
博客等级: 少校
技术积分: 921
注册时间:
IT168企业级官微
微信号:IT168qiye
系统架构师大会
微信号:SACC2013
分类: WINDOWS
交易测试:
协议选择:
web(http/html)
application tyep:Win32 Applications
初始化部分
vuser_init(){ &lr_load_dll("des2.dll");&return 0;}
运行部分:
Action(){ &&& char *&char& strs[100];&char seq[64];&char sqrb[100];&&&& char& gu[10];
//手工关联
web_reg_save_param("downs",&&&&&& "LB=SEQ&", "RB=&STAN&", LAST);
//复制字符串到strs
strcpy(strs,lr_eval_string("{numbers}"));//lr_message("strs=%s",strs);//直接调用dll中的函数
ClsEncry(strs);
//保存strs为参数,以便后面直接调用lr_save_string(strs,"sqrb");//lr_message("the encryped data is :%s",lr_eval_string("{sqrb}"));
web_reg_save_param("mids",&&"LB=&MID&", "RB=&&&&&& &DATE&", LAST);
web_reg_save_param("sns",&&"LB=&SN&", "RB=&SCR1&", LAST);
lr_start_transaction("down_parameter");&web_custom_request("ClsTrading", &&"URL=http://192.168.1.68:8523/cls/service/ClsTrading", &&"Method=POST", &&"Resource=0", &&"RecContentType=text/xml", &&"Referer=", &&"Snapshot=t3.inf", &&"Mode=HTTP", &&"EncType=text/ charset=utf-8", &&"Body=&?xml version=\"1.0\" encoding=\"utf-8\"?&&soap:Envelope xmlns:soap=\"" xmlns:xsi=\"" xmlns:xsd=\" xmlns=\"&", &&LAST);lr_end_transaction("down_parameter",LR_AUTO);
&&& //lr_output_message("参数是: %s",lr_eval_string("{downs}"));&te=atol(lr_eval_string("{downs}"))+1;&&& itoa(te,gu,10);&//lr_output_message("t=%s",gu);&lr_save_string(gu,"downs");&//lr_output_message("参数是: %s",lr_eval_string("{downs}"));&//strcat(pp,gu);//strcat(pp,paraArry);//lr_message("pp=%s",pp);
&lr_start_transaction("100journal");&lr_think_time(15);
&lr_rendezvous("journal");
&web_custom_request("trading", &&"URL=http://192.168.1.68:8523/cls/trading", &&"Method=POST", &&"Resource=0", &&"Referer=", &&"Snapshot=t4.inf", &&"Mode=HTTP", &&"Body=&TTYPE&100&MID&{mids}&TID&{terminal}&SP&1&SEQ&{downs}&PAMT&4000&ENTRY&01&MAC&1BBBD790&RCPT&0&SN&{sns}&BRQ&{sqrb}", &&LAST);lr_error_message("你的贴号是:%s",lr_eval_string("{numbers}"));lr_error_message("你选的终端是:%s",lr_eval_string("{terminal}"));&lr_end_transaction("100journal",LR_AUTO);
&return 0;}
阅读(2157) | 评论(0) | 转发(0) |
相关热门文章
给主人留下些什么吧!~~
请登录后评论。

我要回帖

更多关于 猎场电视剧女一号 的文章

 

随机推荐