|
我录制了一个关于登录的脚本,想check一下登录执行的状态,
在login Action里定义了这样的变量:
int status_login; //用于判断登录是否执行成功
status_login = web_submit_data("pkmslogin.form",
"Action=https://w3.ibm.com/pkmslogin.form",
"Method=POST",
"RecContentType=text/html",
"Referer=https://w3.ibm.com/w3login.html?returnUrl=/wps/myportal",
"Snapshot=t487.inf",
"Mode=HTTP",
ITEMDATA,
"Name=username", "Value={Username}", ENDITEM,
"Name=password", "Value={Password}", ENDITEM,
"Name=login-form-type", "Value=pwd", ENDITEM,
"Name=submitButton", "Value=Submit", ENDITEM,
"Name=cancelButton", "Value=", ENDITEM,
"Name=resumeSession", "Value=true", ENDITEM,
"Name=returnurl", "Value=%2Fmyportal", ENDITEM,
LAST);
if (status_login == 0) {
lr_log_message("登录成功!%s");
}
以上三部分代码是选择中间关于检查执行状态的,并非所有的脚本。
把检查执行状态的语句,即上面的三部分代码去掉后,就OK了。
我用单步跟踪时发现出错的地方就在这里:“if (status_login == 0) {”。报的错为:
login.c(534): Error: C interpreter run time error: login.c (534): Error -- memory violation : Exception ACCESS_VIOLATION received.
login.c(534): Notify: CCI trace: login.c(534): lr_log_message(0x010a3497)
login.c(534): Notify: CCI trace: Compiled_code(0): login()
不太理解这里为什么会报错呢? web_submit_data返回一个INT类型,我存到status_login中,再通过判断status_login的值,status_login为0(LR_PASS)时,就应该是执行成功的,可是为什么又不对呢?
请各位指教一下, 谢谢!
[ 本帖最后由 kittylc 于 2009-10-16 19:05 编辑 ] |
|