msnshow 发表于 2014-8-31 11:34:06

// lrc_GetDoubleArrayFromVariant从变量中提取数组。
VARIANT lrc_GetDoubleArrayFromVariant(const VARIANT* var);

// lrc_GetErrorArrayFromVariant从变量中提取数组。
VARIANT lrc_GetErrorArrayFromVariant(const VARIANT* var);

// lrc_GetFloatArrayFromVariant从变量中提取数组。
VARIANT lrc_GetFloatArrayFromVariant(const VARIANT* var);

// lrc_GetIntArrayFromVariant从变量中提取数组。
VARIANT lrc_GetIntArrayFromVariant(const VARIANT* var);

// lrc_GetLongArrayFromVariant从变量中提取数组。
VARIANT lrc_GetLongArrayFromVariant(const VARIANT* var);

// lrc_GetShortArrayFromVariant从变量中提取数组。
VARIANT lrc_GetShortArrayFromVariant(const VARIANT* var);

// lrc_GetUintArrayFromVariant从变量中提取数组。
VARIANT lrc_GetUintArrayFromVariant(const VARIANT* var);

// lrc_GetUlongArrayFromVariant从变量中提取数组。
VARIANT lrc_GetUlongArrayFromVariant(const VARIANT* var);

// lrc_GetUshortArrayFromVariant从变量中提取数组。
VARIANT lrc_GetUshortArrayFromVariant(const VARIANT* var);

// lrc_GetVariantArrayFromVariant从变量中提取数组。
VARIANT lrc_GetVariantArrayFromVariant(const VARIANT* var);

// lrc_Get<Type-Name>Array_by_refFromVariant   
//函数系列从变量中的指针引用提取在Type-Name   中
//指定的类型的数组。
<Type-Name> lrc_Get<Type-Name>Array_by_refFromVariant const VARIANT* var);

// lrc_GetShortArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetShortArray_by_refFromVariant(const VARIANT* var);

// lrc_GetUshortArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetUshortArray_by_refFromVariant(const VARIANT* var);

msnshow 发表于 2014-8-31 11:34:13

// lrc_GetCharArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetCharArray_by_refFromVariant(const VARIANT* var);

// lrc_GetIntArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetIntArray_by_refFromVariant(const VARIANT* var);

// lrc_GetUintArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetUintArray_by_refFromVariant(const VARIANT* var);

// lrc_GetUlongArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetUlongArray_by_refFromVariant(const VARIANT* var);

// lrc_GetByteArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetByteArray_by_refFromVariant(const VARIANT* var);

// lrc_GetLongArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetLongArray_by_refFromVariant(const VARIANT* var);

// lrc_GetFloatArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetFloatArray_by_refFromVariant(const VARIANT* var);

// lrc_GetDoubleArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetDoubleArray_by_refFromVariant(const VARIANT* var);

// lrc_GetBoolArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetBoolArray_by_refFromVariant(const VARIANT* var);

// lrc_GetScodeArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetScodeArray_by_refFromVariant(const VARIANT* var);

// lrc_GetCurrencyArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetCurrencyArray_by_refFromVariant(const VARIANT* var);

msnshow 发表于 2014-8-31 11:34:26

// lrc_GetDateArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetDateArray_by_refFromVariant(const VARIANT* var);

// lrc_GetBstrArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetBstrArray_by_refFromVariant(const VARIANT* var);

// lrc_GetCoObjectArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetCoObjectArray_by_refFromVariant(const VARIANT* var);

// lrc_GetDispObjectArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetDispObjectArray_by_refFromVariant(DispObjectArray array);

// lrc_GetVariantArray_by_refFromVariant从变量中的
//指针引用提取数组。
VARIANT lrc_GetVariantArray_by_refFromVariant(DispObjectArray array);

// GetElementFrom<n>D<Type-Name>Array   
//函数系列从SafeArray中检索指定类型的元素。
//返回变量的类型是实际语言类型(如无符号长整型),
//而非lrc类型(例如,ulong类型)。
// VuGen将这些调用生成为注释掉的代码,
//您可以使用它们存储参数化变量。若要使用
//这些调用,请取消它们的注释并将函数
//返回值分配给适当类型的变量。
<Actual Type-Name> GetElementFrom<n>D<Type-Name>Array(<Type-Name>Array Array, int
index1,..., indexn);

// PutElementIn<n>D<Type-Name>Array函数
//系列将给定类型的值存储于在Type-Name   中
//给出的lrc类型的数组中。
void PutElementIn<n>D<Type-Name>Array(<Type-Name>Array array, int index1,...int indexn,
<Actual Type-Name> Value);

// lrc_FetchRecordset函数将指针在记录集中
//   向前或向后移动到当前记录。
void lrc_FetchRecordset(recordset15* recordset,            int steps);

// lrc_print_recordset函数输出由NumberOfRows   
//指示的行数。如果NumberOfRows等于-1 ,则
//函数将输出所有行

msnshow 发表于 2014-8-31 11:34:34

void lrc_print_recordset (Recordset15* recordset, long NumberOfRows);

// lrc_print_variant函数输出变量。
//如果变量包含数组或记录,则只输出
//   内容的类型。
void lrc_print_variant (Variant var);

// lrc_save_rs_param函数将指定字段
//的值保存到ADO记录集的记录中。
void    lrc_save_rs_param(Recordset15* recordset, int row, short col, void* reserved,
char*param_name);

// lrc_RecordsetWrite函数更新ADO   
//记录集中的字段。首先,它将指针在记录
//集中移动指定步数。然后,它将值写入当前
//记录中。此函数可以表示用户对网格中项目
//的更改。
void    lrc_RecordsetWrite(Recordset15* recordset, VARIANT vIndex, VARIANT vValue, long
steps);

// lrc_<type>_by_ref函数将指针的内存分配给
//类型<type>的变量,并使用str中包含的值
//对其进行初始化。
int * lrc_<type>_by_ref(const char* str);

// lrc_FetchRecordsetUntilEOF函数将指针
//在记录中移动,直到移动到记录集的末尾。
void    lrc_FetchRecordsetUntilEOF(Recordset15* recordset);

// lrc_RecordsetAddColumn函数将新列添加
//到记录集中。它类似于Append ADO方法。
void    lrc_RecordsetAddColumn(Recordset15* recordset, BSTR name, int type,                  long
size, int attribute);

// lrc_RecordsetDeleteColumn函数从记录集中删除列。
//它类似于Delete ADO方法。
void    lrc_RecordsetDeleteColumn(Recordset15* recordset, VARIANT index);

// lrd_alloc_connection函数分配LRD_CONNECTION   
//结构。在lrd_free_connection释放该结构之前,它是
//有效的。
LRDRET lrd_alloc_connection ( LRD_CONNECTION **mpptConnection, unsigned int
muiDBType, LRD_CONTEXT *mptContext, long mliOption, int miDBErrorSeverity );

msnshow 发表于 2014-8-31 11:34:41

// lrd_assign函数将null终止字符串
//(文字或存储区域)通过其描述符分配给变量。
//必要时,字符串将被转换为变量的
//数据类型和长度。若要在字符串中包含   
// null字符('\0') ,或者如果字符串不是   
// null终止的,请使用lrd_assign_ext或   
// lrd_assign_literal 。只能通过
//指定NULL或0   (不带引号),才能为lrd_assign   
//分配NULL值。
LRDRET lrd_assign ( LRD_VAR_DESC *mptVarDesc, char *mpcValStr, char *mpszValStrFmt,
unsigned long muliIndex, long mliOffset );

// lrd_assign_ext将带有显式长度的
//存储区域值通过其描述符分配给变量。
//必要时,该值将被转换为变量的数据类型
//和长度。该值可以包含嵌入的null字符   
// ('\0') 。也可以通过使用NULL或0         (不带引号)
//指定NULL值。
LRDRET lrd_assign_ext ( LRD_VAR_DESC *mptVarDesc, char *mpcValStr, long mliValStrLen,
char *mpszValStrFmt, unsigned long muliIndex, long mliOffset );

// lrd_assign_literal函数将由引号
//括起的文字字符串值通过其描述符分配给变量
//(标量或数组)。必要时,该值将被转换为
//变量的数据类型和长度。该值可以
//包含嵌入的null字符('\0') 。也可以
//通过使用NULL或0       (不带引号)指定   
// NULL值。字符串的长度由(sizeof(string) -1)   
//确定。
LRDRET lrd_assign_literal ( LRD_VAR_DESC *mptVarDesc, char *mpcValStr, char
*mpszValStrFmt, unsigned long muliIndex, long mliOffset );

// lrd_assign_bind函数将null终止
//字符串值分配给标量变量并将变量绑定到
//   占位符。如果字符串不是null终止的,请使用   
// lrd_assign_bind_ext或lrd_assign_bind_literal 。
//此函数将执行lrd_assign和lrd_bind_placeholder   
//函数,但它被限定为标量型
//变量。
LRDRET lrd_assign_bind ( LRD_CURSOR *mptCursor, char *mpszPlaceholder, char
*mpcValStr, LRD_VAR_DESC *mptVarDesc, char *mpszValStrFmt, unsigned long muliOption,
int miDBErrorSeverity );

// lrd_assign_bind_ext函数将带有

msnshow 发表于 2014-8-31 11:34:51

//显式长度的存储区域通过其描述符分配给
//标量变量,并将变量绑定到占位符。
//必要时,该值将被转换为变量的类型和
//长度。该值可以包含嵌入的null字符('\0') 。
//也可以通过使用NULL或0            (不带引号)
//指定NULL值。此函数执行lrd_assign_ext   
//和lrd_bind_placeholder   
//函数,但它被限定为标量型
//变量。
LRDRET lrd_assign_bind_ext ( LRD_CURSOR *mptCursor, char *mpszPlaceholder, char
*mpcValStr, long mliValStrLen, LRD_VAR_DESC *mptVarDesc, char *mpszValStrFmt,
unsigned long muliOption, int miDBErrorSeverity );

// lrd_assign_bind_literal函数将
//   由引号括起的文字字符串值通过其描述符
//分配给标量变量,然后将变量绑定到SQL语句
//文本中的占位符。必要时,该值将被转换
//为变量的类型和长度。该值可以包含嵌入
//的null字符('\0') 。也可以通过
//使用NULL或0   (不带
//引号)指定NULL   
//值。
LRDRET lrd_assign_bind_literal ( LRD_CURSOR *mptCursor, char *mpszPlaceholder, char
*mpcValStr, LRD_VAR_DESC *mptVarDesc, char *mpszValStrFmt, unsigned long muliOption,
int miDBErrorSeverity );

// lrd_attr_set函数设置LRDDBI句柄
//的属性。在使用lrd_handle_alloc调用此
//函数前必须显式分配句柄。只有Oracle 8.0和
//更高版本才支持此函数。
LRDRET lrd_attr_set ( void *mpvLRDDBIHandleTarget, long mliAttrType, void *mpvValue,
long mliValueLen, int miDBErrorSeverity );

// lrd_attr_set_from_handle函数设
//置LRDDBI句柄的属性。在使用lrd_handle_alloc   
//调用此函数前必须显式分配句柄。
//只有Oracle 8.0和更高版本才支持
//此函数。
LRDRET lrd_attr_set_from_handle ( void *mpvLRDDBIHandleTarget, long mliAttrType, void
*mpvValue, long mliValueLen,    int miDBErrorSeverity );

// lrd_attr_set_literal函数设置   
// LRDDBI句柄的属性。此函数使用文字
//字符串指定属性,从而允许其包含NULL字符。

msnshow 发表于 2014-8-31 11:35:00

LRDRET lrd_attr_set_literal ( void *mpvLRDDBIHandleTarget, long mliAttrType, void
**mppvValue, int miDBErrorSeverity );

// lrd_bind_col函数将主机变量绑定到输出列。
// VuGen为结果集中的所有列生成lrd_bind_col   
//语句。
LRDRET lrd_bind_col ( LRD_CURSOR *mptCursor, int muiColNum, LRD_VAR_DESC
*mptVarDesc, long mliOption, int miDBErrorSeverity );

// lrd_bind_cols函数将主机变量绑定
//到输出列。VuGen为结果集中的所有列
//生成lrd_bind_col语句。
LRDRET lrd_bind_cols ( LRD_CURSOR *mptCursor, LRD_BIND_COL_INFO
*mptBindColInfo, int miDBErrorSeverity );

// lrd_bind_cursor将光标绑定到   
// SQL语句文本中的占位符。此函数
//要与包含PL/SQL命令的语句配合使用。
LRDRET lrd_bind_cursor( LRD_CURSOR *mptCursor, char *mpszPlaceholder, unsigned long
muliOption, LRD_CURSOR **mpptBoundCursor, int miDBErrorSeverity );

// lrd_bind_placeholder函数将
//主机变量或数组绑定到占位符。此函数
//要与lrd_assign配合使用。
LRDRET lrd_bind_placeholder ( LRD_CURSOR *mptCursor, char *mpszPlaceholder,
LRD_VAR_DESC *mptVarDesc, unsigned long muliOption, int miDBErrorSeverity );

// lrd_cancel函数取消提交给数据库
//服务器的前一语句或信息。在Oracle   
//   中,lrd_cancel通知服务器取消查询并
//释放与光标相关的所有资源。如果只需要
//多行查询的第一行,此函数是非常有用的。
//可以在lrd_fetch之后调用lrd_cancel   
//   以通知服务器不需要执行其他提取
//操作。
LRDRET lrd_cancel ( LRD_CONNECTION *mptConnection, LRD_CURSOR *mptCursor, long
mliOption, int miDBErrorSeverity );

// lrd_close_all_cursors函数关闭
//用于指定连接的所有打开的光标。
LRDRET lrd_close_all_cursors ( LRD_CONNECTION *mptConnection );

// lrd_close_connection函数
//关闭与数据库的指定连接。

msnshow 发表于 2014-8-31 11:35:08

LRDRET lrd_close_connection ( LRD_CONNECTION **mpptConnection, long mliOption, int
miDBErrorSeverity );

// lrd_close_context函数关闭ctlib函数的上下文。
LRDRET lrd_close_context ( LRD_CONTEXT **mpptContext, long mliOption, int
miDBErrorSeverity );

// lrd_close_cursor函数关闭指定
//数据库光标。关闭光标后,则无法再使用
//该光标执行SQL语句。
LRDRET lrd_close_cursor ( LRD_CURSOR **mpptCursor, int miDBErrorSeverity );

// lrd_col_data函数设置指向
//特定列的数据的指针。
//此函数访问数据,但不执行绑定操作。
//注意,若要引用数据(通过指针),必须将其
//转换为相应类型。lrd_col_data只出现
//在Vuser脚本目录的print.inl文件中。
LRDRET lrd_col_data ( LRD_CURSOR *mptCursor, unsigned int muiColNum, long mliOffset,
LRD_VAR_DESC *mptVarDesc, unsigned long *mpuliFetchedLen, int miDBErrorSeverity );

// lrd_commit函数提交当
//前数据库事务。提交事务后,
//不能执行回滚。
LRDRET lrd_commit ( LRD_CONTEXT *mptContext, LRD_CONNECTION *mptConnection,
int miDBErrorSeverity );

// lrd_ctlib_cursor函数指定要初始化
//的CtLib光标命令。此函数指定命令
//类型及其适用选项。
LRDRET lrd_ctlib_cursor ( LRD_CURSOR *mptCursor, char *mpcName, long mliNameLen,
char *mpcText, long mliTextLen, LRDOS_INT4 mjCmdType, LRDOS_INT4 mjCmdOption, int
miDBErrorSeverity );

// lrd_data_info函数基于请求
//规范获取I/O描述符信息。
//请求规范字符串是null终止的字符串,
//其中包含由分号分隔的<keyword>=<value>   
//规范对。
LRDRET lrd_data_info ( LRD_CURSOR *mptCursor, unsigned int muiColNum, unsigned long
muliIODescNum, char *mpszReqSpec, int miDBErrorSeverity );

// lrd_db_option函数为数据库光标、
//上下文或连接设置选项。

msnshow 发表于 2014-8-31 11:35:27

LRDRET lrd_db_option ( void *mpvTargetObject, unsigned long muliOption, void
*mpvOptionValue, int miDBErrorSeverity );

// lrd_dynamic函数指定要处理的动态SQL语句。
LRDRET lrd_dynamic ( LRD_CURSOR *mptCursor, char *mpcID, long mliIDLen, char
*mpcText, long mliTextLen, LRDOS_INT4 mjCmdType, int miDBErrorSeverity );

// lrd_end函数关闭VuGen环境
//并清除所有打开的结构和指针。此函数
//在Vuser脚本中只被调用一次。
LRDRET lrd_end ( void *mpvEndParams );

// lrd_env_init函数分配并
//初始化LRDBI环境句柄。
//如果被指向的指针是NULL ,则将分配
//新的LRDDBI环境句柄。如果该值不是NULL ,
//且被指向的LRDDBI句柄具有要求
//的属性,则不会分配新的LRDDBI句柄,
//并且函数将成功返回。否则将
//返回LRDRET_E_EXISTING_HANDLE_ERROR 。
LRDRET lrd_env_init ( unsigned int muiDBType, void **mppvLRDDBIHandleEnv, unsigned
long muliMode, int miDBErrorSeverity );

// lrd_exec函数执行lrd_stmt设置的SQL语句。
LRDRET lrd_exec ( LRD_CURSOR *mptCursor, unsigned long muliTotalRows, unsigned long
muliSkipRows, unsigned long *mpuliRowsProcessed, long mliOption, int miDBErrorSeverity );

// lrd_fetch函数从结果集中提取后续若干行。
//在录制的脚本中,结果集中的行数是参数   
// mliRequestedRows的绝对值。例如,
//如果lrd_fetch的第二个参数是-14 ,
//则检索了十四行数据。
//   
LRDRET lrd_fetch ( LRD_CURSOR *mptCursor, long mliRequestedRows, long
mliRowsBatchSize, unsigned long *mpuliFetchedRows, LRD_PRINT_ROW_TYPEDEF
mpfjPrintRow, int miDBErrorSeverity );

// lrd_fetchx函数使用扩展
//提取(SQLExtendedFtech)从结果集
//   中提取后续若干行。在录制的脚本中,
//结果集中的行数是参数mliRequestedRows   
//的绝对值。例如,如果lrd_fetchx的第二个
//参数是-14 ,则检索了十四行数据。
LRDRET lrd_fetchx ( LRD_CURSOR *mptCursor, long mliRequestedRows, longmliRowsBatchSize, unsigned long *mpuliFetchedRows, LRD_PRINT_ROW_TYPEDEF
mpfjPrintRow, long mliOption, int miDBErrorSeverity );

msnshow 发表于 2014-8-31 11:35:34

// lrd_fetch_adv使用ODBC扩展
//提取(SQLExtendedFtech)从结果集
//   中提取多行。在录制的脚本中,
//结果集中的行数是参数mliRequestedRows的
//绝对值。
LRDRET lrd_fetch_adv( LRD_CURSOR *mptCursor, long mliRequestedRows,      long
mliRowsBatchSize, unsigned long *mpuliFetchedRows,      LRD_PRINT_ROW_TYPEDEF
mpfjPrintRow, long mliOption,      int miDBErrorSeverity, long mlilFetchOffset,      unsigned
short musOrientation);

// lrd_free_connection释放lrd_alloc_connection   
//创建的LRD_CONNECTION结构。
LRDRET lrd_free_connection ( LRD_CONNECTION **mpptConnection, long mliOption, int
miDBErrorSeverity );

// lrd_handle_alloc函数分配并初始化   
// LRDBI句柄。注意,在调用此函数前必须
//显式地(使用lrd_handle_alloc )或
//隐式地(使用lrd_logon )分配父句柄。
LRDRET lrd_handle_alloc ( unsigned int muiDBType, void *mpvLRDDBIHandleParent, long
mliDBHandleType, void **mppvLRDDBIHandle, int miDBErrorSeverity );

// lrd_handle_free函数显式地释放   
// LRDDDBI句柄。注意,句柄必须已被
//显式地(使用lrd_handle_alloc )
//或隐式地(使用lrd_logon )分配。只有   
// Oracle 8.0和更高版本才支持此函数。
LRDRET lrd_handle_free ( void **mppvLRDDBIHandle, int miDBErrorSeverity);

// lrd_init函数设置包含LRD环境
//初始化信息的LRD_INIT_INFO结构。
//此函数在脚本中只被调用一次,并且要
//置于所有其他LRD函数调用之前。
LRDRET lrd_init ( LRD_INIT_INFO *mptInitInfo, LRD_DEFAULT_DB_VERSION
*mpatDefaultDBVersion );

// lrd_initialize_db函数初始化数据库
//进程环境。注意,内存回调函数是
//不受支持的。
LRDRET lrd_initialize_db( unsigned int muiDBType, long mliMode, int miDBErrorSeverity );

msnshow 发表于 2014-8-31 11:35:48

// lrd_logoff函数终止由lrd_logon或
//    lrd_logon_ext启动的简单数据库会话。
LRDRET lrd_logoff ( void *mppvLRDDBIHandleSvcCtx, int miDBErrorSeverity );

// lrd_logon函数创建简单登录会话,
//其中的用户名、密码和数据库服务器
//标识字符串都是null终止字符串。
//只有Oracle 8.0和更高版本才支持此函数。
LRDRET lrd_logon (void *mpvLRDDBIHandleEnv, void **mppvLRDDBIHandleSvcCtx, char
*mpcUserName, char *mpcPassword, char *mpcServerID, int miDBErrorSeverity);

// lrd_logon_ext函数通过显式指定
//长度的用户名、密码和数据库
//服务器标识字符串创建简单数据库会话。
//只有Oracle 8.0和更高版本
//才支持此函数。
LRDRET lrd_logon_ext (void const *mpvLRDDBIHandleEnv, void
**mppvLRDDBIHandleSvcCtx, char *mpcUserName, long mliUserNameLen, char
*mpcPassword, long mliPasswordLen, char *mpcServerID, long mliServerIDLen, int
miDBErrorSeverity );

// lrd_msg函数允许您向日志文件   
// output.txt发送数据库消息。只有
//当指定消息的类匹配Log运行时设置中的
//设置时,消息才发送给日志文件。例如,
//如果在运行时设置中选择“Brief Log ”,
//则只有分配给brief类的调式消息才会
//   出现。
LRDRET lrd_msg ( int miMsgClass, char *mpszMsg );

//函数lrd_oci8_to_oci7将现有Oracle OCI 8   
//连接mpptConnectionconverts转换为Oracle   
// OCI 7连接。脚本将使用OCI 7连接通过执行   
// OCI 7和OCI 8操作来继续运行。此函数修改现有
//连接mpptConnection并且不创建任何与数据库的
//新的连接。
//   
LRDRET lrd_oci8_to_oci7 ( void* mpvLRDDBIHandleSvcCtx, LRD_CONNECTION**
mpptConnection, int miDBErrorSeverity );

msnshow 发表于 2014-8-31 11:36:11

// lrd_open_connection函数设置LRD_CONNECTION   
//结构。在使用lrd_close_connection释放该结构之前,
//它是有效的。
LRDRET lrd_open_connection ( LRD_CONNECTION **mpptConnection, unsigned int muiDBType, char *mpszUser, char *mpszPassword, char *mpszServer, char *mpszExtConnectStr,
LRD_CONTEXT *mptContext, long mliOption, int miDBErrorSeverity );

// lrd_open_context函数打开ctlib函数的上下文。
LRDRET lrd_open_context ( LRD_CONTEXT **mpptContext, unsigned int muiDBType, long
mliLibVersionBehavior, unsigned int muiOption, int miDBErrorSeverity );

// lrd_open_cursor函数通过设置LRD_CURSOR   
//结构打开光标。您可以使用单个光标执行后续SQL   
//语句。在使用lrd_close_cursor释放该结构之前,
//它是有效的。
LRDRET lrd_open_cursor ( LRD_CURSOR **mpptCursor, LRD_CONNECTION
*mptConnection, int miDBErrorSeverity );

// lrd_option函数将值分配给LRD   
//选项(LRD_OPTION_)之一。
LRDRET lrd_option ( unsigned long muliOption, void *mpvOptionValue );

// lrd_ora8_attr_set函数设置LRDDBI句柄
//的属性。在使用lrd_handle_alloc调用此
//函数前必须显式分配句柄。只有Oracle 8.0和
//更高版本才支持此函数。
LRDRET lrd_ora8_attr_set ( void *mpvLRDDBIHandleTarget, long mliAttrType, void
*mpvValue, long mliValueLen, int miDBErrorSeverity );

// lrd_ora8_attr_set_from_handle函数设置   
// LRDDBI句柄的属性。在使用lrd_handle_alloc   
//调用此函数之前,必须显式地分配句柄。
//只有Oracle 8.0和更高版本才支持此函数。
//   
LRDRET lrd_ora8_attr_set_from_handle ( void *mpvLRDDBIHandleTarget, long mliAttrType,
void *mpvValue, long mliValueLen,    int miDBErrorSeverity );

// lrd_ora8_attr_set_literal函数
//设置LRDDBI句柄的属性。此函数使用
//文本字符串指定属性,从而允许其包含NULL   
//字符。
LRDRET lrd_ora8_attr_set_literal ( void *mpvLRDDBIHandleTarget, long mliAttrType, void
*mpvValue, int miDBErrorSeverity );

msnshow 发表于 2014-8-31 11:36:27

// lrd_ora8_bind_col函数将主机变量
//绑定到输出列。VuGen为结果集中的所有列生成   
// lrd_ora8_bind_col语句。
LRDRET lrd_ora8_bind_col (void *mpvLRDDBIHandleStmt, void
**mppvLRDDBIHandleDefine, int muiColNum, LRD_VAR_DESC *mptVarDesc, long mliMode,
int miDBErrorSeverity );

// lrd_ora8_bind_placeholder函数将
//主机变量或数组绑定到占位符。此函数要
//与lrd_assign配合使用。
LRDRET lrd_ora8_bind_placeholder (void *mpvLRDDBIHandleStmt, void
**mppvLRDDBIHandleBind, char *mpszPlaceholder, LRD_VAR_DESC *mptVarDesc, unsigned
long muliOption, long mliMode, int miDBErrorSeverity );

// lrd_ora8_commit函数从Oracle 8.x客户端
//的上一保存点提交当前数据库事务。
LRDRET lrd_ora8_commit ( void *ServiceContextHandle, long Mode,    int ErrorSeverity );

// lrd_ora8_exec函数执行lrd_stmt设置
//的SQL语句。此函数重置由lrd_ora8_stmt设置
//的SQL语句内容;在每个lrd_ora8_exec函数
//调用之后,您必须提供新的语句(并可选择
//绑定参数)。
LRDRET lrd_ora8_exec ( void *mpvLRDDBIHandleSvcCtx, char *mpvLRDDBIHandleStmt,
unsigned long muliTotalRows, unsigned long muliSkipRows, unsigned long
*mpuliRowsProcessed, LRD_ORA8_PRINT_ROW_TYPEDEF mpfjPrintRow, void *Reserved1,
void *Reserved2, long mliMode, int miDBErrorSeverity );

// lrd_ora8_fetch函数从结果集中
//提取后续若干行。在录制的脚本中,结果集
//   中的行数是参数mliRequestedRows的
//绝对值。例如,如果lrd_ora8_fetch的
//第二个参数是-14 ,则检索了十四
//行数据。
LRDRET lrd_ora8_fetch (void *mpvLRDDBIHandleStmt, long mliRequestedRows, long
mliRowsBatchSize, unsigned long *mpuliFetchedRows, LRD_PRINT_ROW_TYPEDEF
mpfjPrintRow, long mliOrientation, long mliMode, int miDBErrorSeverity );

// lrd_ora8_handle_alloc函数分配
//并初始化LRDBI句柄。句柄类型只由
//   限定符指定。限定符是LRD_HTYPE_ORACLE_字符串
//的唯一后缀。例如,在LRD_HTYPE_ORACLE_SESSION   中,
//   限定符是“SESSION”。
LRDRET lrd_ora8_handle_alloc ( void const * mpvParentHandle, long const mliDBHandleType,
void * * const mppvLRDDBIHandle, int const miDBErrorSeverity );

msnshow 发表于 2014-8-31 11:36:48

// lrd_ora8_lob_read函数在大对象   
// (LOB)描述符已从数据库中提取后,从该描述符中读取字符。注意,lrd_ora8_lob_read   
//读取的字符无法被访问。此函数用于增加   
// Oracle服务器的负载并模拟现实的服务器
//活动。
LRDRET lrd_ora8_lob_read ( void * const mpvLRDDBIHandleSvcCtx, void * const
mpvLRDDBIHandleLob, unsigned long const mjAmtToRead, unsigned long * const
mpjAmtRead, unsigned long const mjOffset, unsigned long const mjBufl, unsigned short const
mjCsid, unsigned char const mjCsfrm, int const miDBErrorSeverity);

// lrd_ora8_rollback函数将当前数据库事务回
//滚到Oracle 8.x客户端的上一保存点。
LRDRET lrd_ora8_rollback ( void *const ServiceContextHandle, long const Mode,    int const
ErrorSeverity );

// lrd_ora8_save_col函数保存指定
//表单元格的动态值并将其分配给参数。
//在Vuser脚本中,此函数用于关联
//语句和其他SQL语句。不使用在查询
//期间提取的实际结果,而是使用参数
//替换常量值。然后,此参数可由同一
//脚本中的其他数据库语句使用。注意,
// lrd_ora8_save_col总是置于   
// lrd_ora8_fetch语句之前。
LRDRET lrd_ora8_save_col (void *mpvLRDDBIHandleStmt, unsigned int muiColNum, long
mliRowNum, unsigned long muliOption, char *mpszParamName );

// lrd_ora8_stmt函数准备用于执行的SQL   
//或PL/SQL语句。语句的文本是null终止
//字符串,在该字符串中没有任何null字符。
//(对于包含null字符的字符串,请使用   
// lrd_ora8_stmt_literal或lrd_ora8_stmt_ext 。)
LRDRET lrd_ora8_stmt (void *mpvLRDDBIHandleStmt, char *mpcStmtText, long mliLanguage,
long mliMode, int miDBErrorSeverity );

// lrd_ora8_stmt_ext函数准备
//用于执行的SQL或PL/SQL语句。
//语句文本是由地址和显式长度指定的。
//文本可以包含null字符,并且应该
       null字符终止。lrd_ora8_stmt_ext   
//   由
//可用于可能包含嵌入null字符的动态
//构造存储区域。
LRDRET lrd_ora8_stmt_ext (void *mpvLRDDBIHandleStmt, char *mpcStmtText, long
mliStmtTextLen, long mliLanguage, long mliMode, int miDBErrorSeverity );

msnshow 发表于 2014-8-31 11:36:55

// lrd_ora8_stmt_literal函数准备
//用于执行的文字SQL或PL/SQL语句。
// lrd_ora8_stmt_ext可用于包含
//嵌入null字符的字符串常量。语句的
//长度由公式sizeof()-1确定。
LRDRET lrd_ora8_stmt_literal (void *mpvLRDDBIHandleStmt, char *mpcStmtText, long
mliLanguage, long mliMode, int miDBErrorSeverity );

//在自动提取中,数据由exec命令提取,
//所以组合提取与输出的lrd_fetch是
//不适用的。lrd_print使用指向   
// bympfjPrintRow的函数输出行。
LRDRET lrd_print ( LRD_CURSOR *mptCursor mptCursor, LRD_PRINT_ROW_TYPEDEF
mpfjPrintRow );

// lrd_reset_rows函数为使用ODBC SqlSetPos函数
//的UPDATE操作准备可供提取的行。
LRDRET lrd_reset_rows ( LRD_CURSOR *mptCursor, long mliRowIndex );

// lrd_result_set函数准备用于
//通过光标输出字符串(通常为SQL语句)
//的下一结果集。对于CtLib ,它发出ct_result   
//命令,并且在ODBC中它运行用于当前数据库
//语句的SqlMoreResults 。
LRDRET lrd_result_set (LRD_CURSOR *mptCursor, long mliOpt1, long mliOpt2, int
miDBErrorSeverity );

// lrd_result_set_ext函数准备
//用于通过光标输出字符串(通常为SQL语句)
//的下一结果集。它发出用于当前数据库
//语句的ct_result 。
LRDRET lrd_result_set_ext ( LRD_CURSOR *mptCursor, long mliOpt1, long mliOpt2, long
*mpliReturnCode, long *mpliResultType, int miDBErrorSeverity );

// lrd_rollback函数将当前数据库
//事务回滚到上一保存点。
LRDRET lrd_rollback ( LRD_CONTEXT *mptContext, LRD_CONNECTION *mptConnection,
int miDBErrorSeverity );

// lrd_row_count函数返回
//受到UPDATE 、DELETE或INSERT语句影响的行数。
//只有ODBC和DB2 Vuser才支持它。
LRDRET lrd_row_count ( LRD_CURSOR * mptCursor, long * mpliRowCount, int
miDBErrorSeverity );

msnshow 发表于 2014-8-31 11:37:02

// lrd_save_col函数保存指定
//表单元格的动态值并将其分配给某
//参数。在Vuser脚本中,此函数
//用于关联语句和其他SQL语句。不
//使用在查询期间提取的实际结果,而是
//使用参数替换常量值。然后,此参数
//可由同一脚本中的其他数据库
//语句使用。注意,lrd_save_col总是
//置于lrd_fetch语句之前。
LRDRET lrd_save_col ( LRD_CURSOR *mptCursor, unsigned int muiColNum, long
mliRowNum, unsigned long muliOption, char *mpszParamName );

// lrd_save_last_rowid函数将当前结果集
//最后一行的rowid保存到参数中。最后的rowid值
//可用在该脚本的稍后位置。
LRDRET lrd_save_last_rowid ( LRD_CURSOR *mptCursor,    char *mpszParamName );

// lrd_save_ret_param函数将存储
//过程的返回参数的值保存到参数中。
//如果函数无法检索返回参数,该
//参数将标记为未初始化。此函数用于关联
//数据库语句。
LRDRET lrd_save_ret_param ( LRD_CURSOR *mptCursor, unsigned int muiRetParamNum,
unsigned long muliOption, char *mpszParamName );

// lrd_save_value函数保存占位符
//描述符的动态值。此函数
//用于设置输出占位符(例如,Oracle中
//的某些存储过程)的关联数据库语句。
//在同一脚本中,此动态保存的值
//可由其他数据库语句使用。注意,lrd_save_value总是
//跟随在lrd_exec语句之后。
LRDRET lrd_save_value ( LRD_VAR_DESC *mptVarDesc, unsigned long muIiIndex, unsigned
long muliOption, char *mpszParamName );

// lrd_send_data函数将某数据块
//发送给服务器。数据的位置由
//请求规范字符串mpszReqSpec指定。
//此null终止字符串包含关键字及其值的列表。
LRDRET lrd_send_data ( LRD_CURSOR *mptCursor, unsigned int muiUnused, unsigned long
muliIODescNum, char *mpszReqSpec, LRD_VAR_DESC *mptVarDesc, int
miDBErrorSeverity );

msnshow 发表于 2014-8-31 11:37:08

// lrd_server_detach函数删除
//用于数据库操作的数据源的访问路径。只有Oracle 8.0和
//更高版本才支持此函数。
LRDRET lrd_server_detach ( void const * mpvLRDDBIHandleServer, long const mliMode, int
const miDBErrorSeverity );

// lrd_session_begin函数启动
//服务器的用户会话。只有Oracle 8.0和
//更高版本才支持此函数。
LRDRET lrd_session_begin ( void *mpvLRDDBIHandleSvcCtx, void
*mpvLRDDBIHandleSession, unsigned long muliCredentials, long mliMode, int
miDBErrorSeverity );

// lrd_session_end函数结束服务器的用户会话。
//只有Oracle 8.0和更高版本才支持此函数。
LRDRET lrd_session_end ( void const *mpvLRDDBIHandleSvcCtx, void const
*mpvLRDDBIHandleSession, long const mliMode,    int const miDBErrorSeverity );

// lrd_siebel_incr函数按指定
//值递增字符串(由数值表示)。在该函数
//递增字符串后,它将字符串写回到原
//   内存位置。表示字符串的数值
//   以36为基。Siebel使用以36为基的
//算法,使用从0到9的数字或
//从A到Z的字母(对应于10到35 )表示
//数值。
LRDRET lrd_siebel_incr (char *string, int increment );

// lrd_siebel_str2num用于自动的Siebel关联。
LRDRET lrd_siebel_str2num (const char *szString);

// {0>The lrd_stmt function associates a character string<}72{>?lrd_stmt函数将字符串(通常
<0 )
//为SQL语句}与光标相关联。如果一个lrd_stmt函数
//之后跟随有另一个(两者之间没有lrd_exec ),
//则这些字符串将被连接。
//注意,单个光标可以支持多个连续
//的SQL语句。虽然可以将SQL语句
//文本拆分为若干个段,但无法拆分
//   占位符标识符。
LRDRET lrd_stmt (LRD_CURSOR *mptCursor, char *mpcText, long mliTextLen,
LRDOS_INT4 mjOpt1, LRDOS_INT4 mjOpt2, int miDBErrorSeverity );

// lrd_to_printable函数将变量

msnshow 发表于 2014-8-31 11:37:18

//或数组元素转换为可打印字符串。
//在录制期间,将在脚本目录的print.inl文件
//   中生成此函数。它提供了有关如何在VuGen的
//   网格中显示结果的信息。
LRDRET lrd_to_printable ( LRD_VAR_DESC *mptVarDesc, unsigned long muliIndex, char
*mpszOutputStr, unsigned long muliOutputStrSize, char *mpszOutputStrFmt );

// SiebelPreSave_x函数指示,
//在对2层Siebel调用lrd_fetch或lrd_ora8_fetch之前,
//需要为自动关联保存哪些Siebel参数。
int SiebelPreSave_x(void);

// SiebelPostSave_x函数在对2层   
// Siebel调用lrd_fetch或lrd_ora8_fetch之后
//保存以后的Siebel参数的值。
int SiebelPostSave_x(void);

// ms_dns_query函数使用
//域名服务(DNS)解析指定主机名的IP地址。
//此函数不会自动将域添加到主机名(需要您显式
//包含该域)。
char * ms_dns_query( char *transaction,    char *dnsserver, [char
*local_address,] LAST );

// ms_dns_nextresult函数在IP地址列表
//   (由ms_dns_query返回)中查询下一个IP地址。
char* ms_dns_nextresult (char *ipaddresslist);

// ftp_delete函数从FTP服务器中删除文件。
int ftp_delete (char *transaction, char *item_list, LAST);

// ftp_delete_ex函数针对指定会话
//从FTP服务器中删除文件。
int ftp_delete_ex (FTP *ppftp, char *transaction, char *item_list, LAST);

// ftp_dir函数在FTP服务器上运行dir命令。
int ftp_dir (char *transaction, char *item_list, LAST);

// ftp_dir_ex函数针对指定会话在FTP   
//服务器上运行dir命令。
int ftp_dir_ex (FTP *ppftp, char *transaction, <List of Attributes>, LAST);

// ftp_get函数在FTP服务器上设置工作目录。
int ftp_get (char *transaction, char *item_list, LAST);

msnshow 发表于 2014-8-31 11:37:48

// ftp_get_last_download_details获取
//上次下载的统计信息。它以毫秒
//为单位将总计下载持续时间分配给pDuration指向
//的长整型变量。此持续时间包括实际传输时间和
//连接开销。
int ftp_get_last_download_details ( unsigned long * pByteCount, unsigned long *pDuration);

// ftp_get_last_download_details_ex获取
//会话中上次下载的统计信息。
//它以毫秒为单位将总计下载持续时间
//分配给pDuration指向的长整型变量。
//此持续时间包括实际传输时间和连接开销。
int ftp_get_last_download_details_ex (FTP *ppFtp, unsigned long * pByteCount, unsigned long *
pDuration);

// ftp_get_ex函数针对指定会话在FTP服务器
//上设置工作目录。
int ftp_get_ex (FTP *ppftp, char *transaction, char *item_list, LAST);

// ftp_get_last_error函数返回FTP会话
//期间发生的最后一次错误。
char * ftp_get_last_error (FTP *ppftp);

// ftp_get_last_error_id函数
//返回在指定FTP会话期间发生的
//最后一次错误的ID编号。
int ftp_get_last_error_id (FTP *ppftp);

// ftp_get_last_handshake_duration   以毫秒为单位返回最后一次
//连接创建的持续时间。
double ftp_get_last_handshake_duration ();

// ftp_get_last_handshake_duration_ex   以毫秒为单位返回会话中
//最后一次连接创建的持续时间。
double ftp_get_last_handshake_duration_ex (FTP *ppFtp);

// ftp_get_last_transfer_duration   以毫秒
//为单位返回最后一次get命令的净传输时间。
//净传输持续时间不包括连接开销。
double ftp_get_last_transfer_duration ();

// ftp_get_last_transfer_duration_ex   以
//毫秒为单位返回此会话最后一次get命令的净传输时间。净传输持续时间不包括
//连接开销。
double ftp_get_last_transfer_duration_ex (FTP *ppftp);

msnshow 发表于 2014-8-31 11:37:55

// ftp_logon函数执行登录到FTP服务器的操作。
int ftp_logon ( char *transaction, char *url, LAST);

// ftp_logon_ex函数针对特定会话登录到FTP服务器。
int ftp_logon_ex (FTP *ppftp, char *transaction, char *url, LAST);

// ftp_logon函数执行从FTP服务器注销的操作。
int ftp_logout ( );

// ftp_logout_ex函数针对特定会话
//从FTP服务器注销。
int ftp_logout_ex (FTP *ppftp);

// ftp_mkdir函数在FTP服务器上设置工作目录。
int ftp_mkdir(char *transaction, char * path);

// ftp_mkdir_ex函数针对指定会话
//在FTP服务器上设置工作目录。
int ftp_mkdir_ex(FTP *ppftp, char *transaction, char * path);

// ftp_put函数在FTP服务器上设置工作目录。
int ftp_put ( char *transaction, char *item_list, LAST);

// ftp_put_ex函数针对指定会话
//在FTP服务器上设置工作目录。
int ftp_put_ex (FTP *ppftp, char *transaction, char *item_list, LAST);

// ftp_rendir函数重命名FTP服务器上的文件或目录。
int ftp_rendir (char *transaction, <item list>, LAST);

//在下列示例中,ftp_rendir_ex函数针对指定会话
//重命名FTP服务器上的文件或目录。
int ftp_rendir_ex (FTP *ppftp, char *transaction, ITEM LIST, LAST);

// ftp_rmdir函数重命名FTP服务器上的目录。
int ftp_rmdir (const char *transaction, const char * path);

// ftp_rmdir_ex函数针对指定会话
//删除FTP服务器上的目录。
int ftp_rmdir_ex (FTP *ppftp, const char *transaction, const char *path);
页: 1 2 [3] 4 5 6 7 8
查看完整版本: LoadRunner函数大全之中文解释