51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 1649|回复: 10
打印 上一主题 下一主题

求救:脚本中对BSTR类型数据的操作

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2005-7-21 16:52:31 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
一个很菜鸟的问题:
在loadrunner脚本中定义了一个BSTR类型的数据A,也赋了值“123”,如何在该数据后增加字符串呢?譬如要把A的值变成“123456”,如何在“123”后增加“456”呢?
我试过+、strcat、&都不行。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2005-7-22 08:32:17 | 只看该作者
:,(:,(:,(:,(
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2005-7-22 13:07:54 | 只看该作者
不可能的!
你试一下这个写法!
char A[255];
strcpy(a,"123");
strcat(a,"456");
lr_output_message("a = %s",a);
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2005-7-22 14:06:23 | 只看该作者
要是BSTR中包含'\0'呢?能够转换成*char后再连起来吗?但是strcat是把’\0'看成字符串的结束符,stract会把'\0'后的都丢掉的哦~~~~
:,(:,(:,(
回复 支持 反对

使用道具 举报

该用户从未签到

5#
 楼主| 发表于 2005-7-22 14:27:04 | 只看该作者
或者有没有函数可以替换BSTR中的指定字符?
譬如:“123412341234”,将‘23’变成aa,即“1aa41aa41aa4”
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2005-7-22 22:05:56 | 只看该作者
你看看这些函数:strncpy(),strtok(),你说这些都是C里面的基础知识!建议你看看C的编程!
回复 支持 反对

使用道具 举报

该用户从未签到

7#
 楼主| 发表于 2005-7-25 08:23:08 | 只看该作者
这些有关字符串的str***函数,一遇到“\n“就当成是字符串的结束,不管后面的内容了。所以包含”\n“的BSTR不能用这些函数啊。
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2005-7-25 10:53:00 | 只看该作者
为什么不可以阿!我做了一些小的测试!用COM/DCOM协议!定义BSTR变量!同样可以使用strcpy和strcat!其实BSTR 就是一个w_char *变量!
回复 支持 反对

使用道具 举报

该用户从未签到

9#
 楼主| 发表于 2005-7-25 15:07:07 | 只看该作者
我也试过啊,要是bstr1=“abc”,bstr2=“123\0456“,
用strpy或strcat的时候,都会把bstr2看成是”123“。
回复 支持 反对

使用道具 举报

该用户从未签到

10#
发表于 2005-7-25 17:47:54 | 只看该作者
那问你一下!你怎么将bstr2的值变为"123\0456"的?你既然能形成"123\0456"那你就可以将字符串连起来的!
BSTR AA[30];
   BSTR BB[30];
   strcpy(AA,"123");
   strcpy(BB,"456");
   strcat(AA,BB);
   lr_output_message("AA= %s",AA);

但是我得到的值就是123456
回复 支持 反对

使用道具 举报

该用户从未签到

11#
 楼主| 发表于 2005-7-26 08:43:21 | 只看该作者
我录制下来的脚本中的BSTR的值就是包含多个‘\0‘。而且里面包含了需要设为参数的字符串。
我现在只能采用了最笨的方法,把该BSTR一段一段的分开,再拼起来。使用了memmove、memcpy。
回复 支持 反对

使用道具 举报

本版积分规则

关闭

站长推荐上一条 /1 下一条

小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

GMT+8, 2024-11-8 14:39 , Processed in 0.075869 second(s), 28 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

快速回复 返回顶部 返回列表