可我不爱喝茶~~~

发布新日志

  • VISTA下安装Lr 9.5的记录

    2009-04-03 15:23:26

     

    1,为了方便做有关软件的配置测试,一狠心就没有把预装的VISTA的操作系统格式化掉,还有一点,我个人比较喜欢vista操作系统,界面很美观,易用性相比XPWIN 2003先进了不少。界面虽然美观了,但是由于各种工具的兼容性,很难正常安装在vista上。我常用的loadrunner就是个例子。下面就是vista下安装loadrunner的记录。

     

    为了能在vista下安装loadrunner,我下载了最新破解的loadrunner9.5

    具体步骤如下:

    1)正常安装所下载的ISO文件,这一切都和其他软件相同。正常安装完毕之后。

    2)安装完成后,破解的时候出了问题。

    具体的破解方法参见lr9.0的破解。删除注册表信息,和覆盖2个关键文件。在删除注册表信息有2种方法,一种是手工删除原有lisence注册表信息,一种是通过别人写好的一个小工具来删除.我个人推崇第一种手动删除,不光删除了信息,还知道了lr具体的注册信息在什么地方存储。另外,对于工具删除 ,毕竟不知道别人写的程序具体实现了什么?会不会挂马等?(请允许我这么小器的猜度,做测试做久了就会有这个职业病阿!)

    3)删除完成后,导入lr的通用序列号,报错:“无效的序列号”,什么原因:返过头去看,发现没有完全删除掉注册表的信息。于是再次删除余孽。

    4)删完后,再次输入lr序列号,还是报错:“不能写入”。什么原因?说实话不知道。。。这个问题折腾了我很久。又对新装的vista操作系统不熟悉,怎么办呢? 在网上搜索无果的情况下,咱只有自己尝试。

    却始终提示的是不能写入。排除了进程占用的情况 ,再次审度一遍。实在没有办法,那咱就重新启动吧!

    5)全部都启动起来了,可还是提示 “不能写入”,有点想疯了,还有想换操作系统的冲动。。。冲动是魔鬼啊,一点都要不得。接下来又做了一大堆的事情检查注册信息,查看安装好的一干文件信息。

    6)转念一想,是不是去自己的用户的权限不足?进入用户帐号:赫然写着“管理员”、到底在什么地方?等等,在更改用户帐户的下方怎么比原来的XP模式下多了一个功能:打开或关闭“用户帐号控制”?这是什么点开看看。原来是对未经授权的操作进行保护 ,会不会是这个原因?先试试在说。去掉了UAC用户帐户控制后,系统要求重启。那么就重启呗。

    • 7)再次重新启动后,打开lr,输入序列号。点确定。。。wow thanks  God.成功了!满心欢喜的看着里面的信息写着10000用户的信息。开心的很。试着用了一个百度的脚本运行,调试,设置场景,到测试,一切OK.开心啊!终于搞定了一个。。。。整个安装折腾了我将近3个小时的时间。唉!最后一般124车都都没有了,只能打车回家了。
    • 8)由于关闭了UAC,所以在任务栏右下角多出来一个带大红叉的盾牌。我觉得很难看,打开看,发现是UAC关闭的缘故,所以我毫不犹豫的就把它又打开了。然后就关机回家。

    9)等到第二天,忽悠另外一个同事在vista下装lr9.5的时候,发现我自己的lisence信息神秘的失踪了?难道昨晚我做了个梦吗?不可能。重新导入,发现还是提示“不能写入”。哦,原来是UAC打开的缘故。再次将UAC关闭掉。呵呵,我的LRLISENCE信息又出现了。。。脚本运行,调试,设置场景,到测试.OK.这才是最终版的OK。。。。汗。。。但还是遇到一个问题,相同的VISTA 操作系统,在另外一个同事的机器上使用相同的方法,但没有破解成功,提示提示无效的序列号。。。。不知何故。。等有时间查查吧!

    今天就记录到这里吧!

  • 【20080911】 lr函数3

    2008-12-10 20:00:30

     
    【20080911】


    1.lr_exit()

    void lr_exit (int continuation_option, int exit_status);

    Example

    vuser_init() {
         int status = ftp_logon("FTP", "URL=ftp://user:pwd@ftp.merc-int.com",                "LocalAddr=ca_server:21", "ClientCert=/ca/pem/",
                   "ClientKey=/ca/pem/key/", "ClientPassword=@3#$8800cvd",
                   "CertificateAuthority=/ca/", "SSLVersion=SSL2", LAST);
         if (status == LR_FAIL) {
              lr_error_message ("ftp login failed");
              lr_exit(LR_EXIT_VUSER, LR_FAIL);
         }
         return(0);
    }
    This function does not return a value.


    2.
    char *lr_get_vuser_ip();
    The lr_get_vuser_ip function returns the IP address of a Vuser. When performing IP spoofing, each Vuser can use a different address. This function allows you to determine the current Vuser's IP address.
    char *ip;
    ip = lr_get_vuser_ip();
    if (ip)
         lr_output_message("The IP address is %s", ip);
    else
         lr_output_message("IP spoofing disabled");
    NOTE: 在CONTROLLER中才可以运行此函数操作,在编译环境下运行不会得到结果。
     
     
     
    【20080912】

    1、int lr_next_row ( const char *dat_file );

    return: if right return the value of specifiyed string
    else return “error”;

    Function:

    Advances to the next row in the parameter data file.

    example:
    int len;
    lr_message("%s=HARRIC",lr_eval_string("{ID}"));
    lr_next_row("ID.dat");
    lr_message("Next ROW DATA IS:%s",lr_eval_string("{ID}"));
    len=lr_paramarr_len("ID");
    lr_message("%d",len);
  • 【08-09-10 lr的存储参数的方法】

    2008-12-10 19:59:40

    因为存储的比较零乱,所以我的记录也很无序!一会儿是这方面的一会儿是另一方面的。呵呵!海涵!
    【08-09-10 lr的存储参数的方法】

    1、存日期
    void lr_save_datetime("Tomorrow is %y-%b-%d ", DATE_NOW+ONE_DAY, "next");
    //TO ADD ONE_MONTH OR ONE_YEAR;
    //TO CHANGE THE format of “%y-%B-%d”FREELY;

    2、存整型
    int lr_save_int ( int value, const char *param_name)
    function:
    The lr_save_int function converts an integer to a string and saves the string in a parameter. If the parameter does not exist, it is created.
    example:
    int num;
    num = 7;
    lr_save_int (num * 4, "harricAge");
    The value of param1 is now "10".
    NOTE:
    converts an integer to a string and saves the string in a parameter
    RETURN: 0-SUCCESS,1-FAIL


    3,存字符串
    int lr_save_string (const char *param_value, const char *param_name);
    RETURN: 0-SUCCESS,1-FAIL

    4,存变量
    int lr_save_var (const char *param_value, unsigned long const value_len, unsigned long const options, const char *param_name);

    5,取参数
    char *lr_eval_string (const char *instring );

    Example:
    Action(){
    #define MAX_LEN 6

    lr_save_string("HarricWang","NAME");

    lr_save_var(lr_eval_string("{NAME}"),MAX_LEN,0,"FIRSTNAME");

    lr_error_message("First name is %s",lr_eval_string("{FIRSTNAME}"));
    }
    Note:
    1,the 3rd parameters of lr_save_var() must be 0;

    我是长胖了,还是衣服变瘦了,还真是个问题!
  • loadrunner学习笔记---与公司的技术论坛同步更新

    2008-12-10 19:58:39

     
    之前,一直在做一些loaderrunner函数的学习,主要是因为时间的缘故,没有好好的整理,现在将一部分整理好的贴上来和大家共同学习下!
    为了练习En,所以偶尔有用E文做注解的习惯,希望大家能谅解,如果实在看不惯,就叫我假洋鬼子好了!

    【080905】
    1,lr_abort(); same function as the phrase "break" in C language;
    2,lr_output_message(); same as 'printf' in C language; write the message on the log, the message is black;
    3,lr_error_message(); same as "system.err.println" in java languae.after run the scrīpt having this function , you will see red message on the log;
    4,lr_save_string(); asign string to parameters

    Remmeber:
    TWO VAR IN LOADRUNNER scrīpt:
    LR_PASS means 0;
    LR_FAIL means 1;
    【08-09-06 LR处理XML】

    1、Lr_xml_extract();

    char * xml_input = // defined a char pointor;
    "<acme_org>"
    " <accounts_dept>"
    "<employee>"
    " <name>John Smith</name>"
    "<cubicle>227</cubicle>"
    "<extension>2145</extension>"
    "</employee>"
    "</accounts_dept>"
    "<engineering_dept>"
    "<employee level=\"manager\">"
    "<name>Sue Jones</name>"
    "<extension>2375</extension>"
    "</employee>"
    "</engineering_dept>"
    "</acme_org>";

    lr_save_string (xml_input,"xmlput");

    lr_xml_extract("XML={xmlput}",
    "XMLFragmentParam=Result1",
    "Query=/acme_org/accounts_dept/employee",LAST);
    lr_output_message(lr_eval_string("Extracted:{Result1}"));

    note: To store the value of XML String to parameter Result1;
Open Toolbar