最近更改 - 搜索:

>动态连接库DLL及com组件开发文档<

首页

流程:

各语言调用示例:

函数调用:

相关下载:

关于我们

联系我们

打码兔代答题新闻

edit

AllFunc

http://wiki.dama2.com/index.php?n=ApiDoc.UploadpicImg

强烈推荐使用D2开头的一键函数,使用方便简洁


D2Balance 一键查询用户余额

/**
 功能:    一键查询用户余额
 函数名:   D2Balance
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    [in]pszSoftwareID - 软件KEY(获取方法:http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY
        [in]pszUserName - 打码兔用户名(注意是用户账号,而不是开发者账号
        [in]pszUserPassword - 打码兔用户密码
  [out]pulBalance(返回用户余额题分
*/
函数原型:int CRACKCAPTCHA_API D2Balance(
       const char *pszSoftwareId,
       const char *pszUserName,
       const char *pszUserPassword,
       unsigned long *pulBalance);


D2Buf 一键式通过图片数据请求打码,开发者需要自行下载并打开验证码图片,获得图片数据后调用本函数请求打码

/**
 功能:    一键式通过图片数据请求打码,调用此函数之前,无需再调用初始化、登录等函数
 函数名:   D2Buf
 返回值:   >0 成功,返回验证码ID(用于调用ReportResult), <0失败,详见错误码定义 http://wiki.dama2.com/index.php?n=ApiDoc.ErrDef
        应该停机处理的错误码包括:-1~-199(参数错误、用户错误)、-208(软件禁用)、-210(非法用户)、-301(配置错误、DLL找不到)
 参数:    [in]pszSoftwareID - 软件KEY(获取方法:http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY)
        [in]pszUserName - 打码兔用户名(注意是用户账号,而不是开发者账号)
        [in]pszUserPassword - 打码兔用户密码
        [in]pImageData - 验证码图片数据字节集
        [in]dwDataLen - 验证码图片数据或验证码文本数据长度,即pImageData大小,限制4M
        [in]usTimeout - 验证码超时时间,即过多久验证码将失效。单位秒。推荐60,如果验证码识别成功,函数立即返回,否则函数会阻塞一直到超时时间返回
        [in]ulVCodeTypeID - 验证码类型ID,请从验证码类型表中找到您验证码的类型ID:http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY 没有适合您的请联系打码兔补充
        [out]pszVCodeText - 返回验证码结果字符,建议传入40字节缓冲区
*/
函数原型:int CRACKCAPTCHA_API D2Buf( const char *pszSoftwareId,
                        const char *pszUserName,
                        const char *pszUserPassword,
                        LPCVOID pImageData,
                        DWORD dwDataLen,
                        unsigned short usTimeout,
                        unsigned long ulVCodeTypeID,
                        char *pszVCodeText);


D2File 一键式通过本机图片文件名请求打码

/**
 功能:    一键式通过本机图片文件名请求打码,调用此函数之前,无需再调用初始化、登录等函数
 函数名:   D2File
 返回值:   >0 成功,返回验证码ID(用于调用ReportResult), <0失败,详见错误码定义 http://wiki.dama2.com/index.php?n=ApiDoc.ErrDef
        应该停机处理的错误码包括:-1~-199(参数错误、用户错误)、-208(软件禁用)、-210(非法用户)、-301(配置错误、DLL找不到)
 参数:    [in]pszSoftwareID - 软件KEY(获取方法:http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY)
        [in]pszUserName - 打码兔用户名(注意是用户账号,而不是开发者账号)
        [in]pszUserPassword - 打码兔用户密码
        [in]pszFilePath - 本机图片文件路径 如:c:\a.jpg,请开发者注意,图片文件截取时请截取验证码区域即可,支持以逗号分号分隔的多个图片文件转为GIF文件,太大的图片文件严重影响识别速度
        [in]usTimeout - 验证码超时时间,即过多久验证码将失效。单位秒。推荐60,如果验证码识别成功,函数立即返回,否则函数会阻塞一直到超时时间返回
        [in]ulVCodeTypeID - 验证码类型ID,请从验证码类型表中找到您验证码的类型ID:http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY 没有适合您的请联系打码兔补充
        [out]pszVCodeText - 返回验证码结果字符,建议传入40字节缓冲区
*/
函数原型:int CRACKCAPTCHA_API D2File( const char *pszSoftwareId,
                        const char *pszUserName,
                        const char *pszUserPassword,
                        const char *pszFilePath,
                        unsigned short usTimeout,
                        unsigned long ulVCodeTypeID,
                        char *pszVCodeText);


D2WndHandle 一键式通过窗口句柄请求打码

/**
 功能:    一键式通过窗口句柄请求打码,调用此函数之前,无需再调用初始化、登录等函数
 函数名:   D2WndHandle
 返回值:   >0 成功,返回验证码ID(用于调用ReportResult), <0失败,详见错误码定义 http://wiki.dama2.com/index.php?n=ApiDoc.ErrDef
        应该停机处理的错误码包括:-1~-199(参数错误、用户错误)、-208(软件禁用)、-210(非法用户)、-301(配置错误、DLL找不到)
 参数:    [in]pszSoftwareID - 软件KEY(获取方法:http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY)
        [in]pszUserName - 打码兔用户名(注意是用户账号,而不是开发者账号)
        [in]pszUserPassword - 打码兔用户密码
        [in]hHandle - 窗口句柄
        [in]lpRect - 窗口位置,以空格分隔的4个数字,分别表示左上右下坐标(相对于窗口左上角)
        [in]usTimeout - 验证码超时时间,即过多久验证码将失效。单位秒。推荐60,如果验证码识别成功,函数立即返回,否则函数会阻塞一直到超时时间返回
        [in]ulVCodeTypeID - 验证码类型ID,请从验证码类型表中找到您验证码的类型ID:http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY 没有适合您的请联系打码兔补充
        [out]pszVCodeText - 返回验证码结果字符,建议传入40字节缓冲区
*/

函数原型:int CRACKCAPTCHA_API D2WndHandle(
       const char *pszSoftwareId,
       const char *pszUserName,
       const char *pszUserPassword,
       HWND hHandle, LPCRECT lpRect,
       unsigned short usTimeout,
       unsigned long ulVCodeTypeID,
       char *pszVCodeText);


D2Wnd 一键式窗口定义请求打码

/**
 功能:    一键式窗口定义请求打码,调用此函数之前,无需再调用初始化、登录等函数
 函数名:   D2Wnd
 返回值:   >0 成功,返回验证码ID(用于调用ReportResult), <0失败,详见错误码定义 http://wiki.dama2.com/index.php?n=ApiDoc.ErrDef
        应该停机处理的错误码包括:-1~-199(参数错误、用户错误)、-208(软件禁用)、-210(非法用户)、-301(配置错误、DLL找不到)
 参数:    [in]pszSoftwareID - 软件KEY(获取方法:http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY)
        [in]pszUserName - 打码兔用户名(注意是用户账号,而不是开发者账号)
        [in]pszUserPassword - 打码兔用户密码
        [in]pszWndDef - 窗口定义串
        [in]lpRect - 窗口位置,以空格分隔的4个数字,分别表示左上右下坐标(相对于窗口左上角)
        [in]usTimeout - 验证码超时时间,即过多久验证码将失效。单位秒。推荐60,如果验证码识别成功,函数立即返回,否则函数会阻塞一直到超时时间返回
        [in]ulVCodeTypeID - 验证码类型ID,请从验证码类型表中找到您验证码的类型ID:http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY 没有适合您的请联系打码兔补充
        [out]pszVCodeText - 返回验证码结果字符,建议传入40字节缓冲区
*/
函数原型:int CRACKCAPTCHA_API D2Wnd(
       const char *pszSoftwareId,
       const char *pszUserName,
       const char *pszUserPassword,
       const char *pszWndDef, LPCRECT lpRect,
       unsigned short usTimeout,
       unsigned long ulVCodeTypeID,
       char *pszVCodeText);


D2Recharge 一键充值

/**
 功能:    用户充值
 函数名:   D2Recharge
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    [in]pszSoftwareID - 软件KEY(获取方法:http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY)
        [in]pszUserName - 充值用户名,最大32字节
        [in]pszCardNo - 充值卡号,32字节
        [out]pulBalance - 返回用户充值后的余额
*/
函数原型:int CRACKCAPTCHA_API D2Recharge(
       const char *pszSoftwareId,
       const char *pszUserName,
       const char *pszCardNo,
       unsigned long *pulBalance);


D2Register 用户注册

/**
 功能:    用户注册
 函数名:   D2Register
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    pszSoftwareId 软件KEY
pszUserName - 用户名,最大31个字节
        pszUserPassword - 密码,最大16字节
        pszQQ - QQ号码,可为空,最大16字节
        pszTelNo - 手机号码,最大16字节,如果动态码发送方式为1或3,手机号则必填
        pszEmail - 邮箱,最大48字节,如果动态码发送方式为2或3,则邮箱必填
        nDyncSendMode - 动态码发送方式,1手机 2邮箱 3手机加邮箱
*/

函数原型:int D2Register(const char *pszSoftwareId,
                          const char *pszUserName,
                          const char *pszUserPassword,
                          const char *pszQQ,
                          const char *pszTelNo,
                          const char *pszEmail,
                          int nDyncSendMode);


强烈推荐使用上面D2开头的一键函数,使用方便简洁,当一键函数满足不了您的需求时,可使用以下接口函数


/**
 功能:    软件初始化
 函数名:   Init
 返回值:   0 成功, 其它失败,详见错误码定义http://wiki.dama2.com/index.php?n=ApiDoc.ErrDef
 参数:    pszSoftwareName(最大31个字符)
        pszSoftwareID(32个16hex字符组成)http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY
*/

函数原型:int Init(const char *pszSoftwareName, const char *pszSoftwareID);


/**
 功能:    用户登录
 函数名:   Login
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    [in]pszUserName(用户名,最大31字节)
        [in]pszUserPassword(密码,最大16字节)
        [in]pDyncVerificationCode(动态验证码,没有动态验证码可直接传NULL)
        [out]pszSysAnnouncementURL(返回打码兔平台公告URL,传入的缓冲区建议512字节,开发者可自行决定是否在界面上显示)
        [out]pszAppAnnouncementURL(返回打码兔开发者后台自已定义的公告URL,传入的缓冲区建议512字节)
*/

函数原型:int Login(const char *pszUserName,
                        const char *pszUserPassword,
                        const char *pDyncVerificationCode,
                        char *pszSysAnnouncementURL,
                        char *pszAppAnnouncementURL);


/**
 功能:    查询用户余额
 函数名:   QueryBalance
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    [out]pulBalance(返回用户余额题分)
*/

函数原型:int QueryBalance(unsigned long *pulBalance);


同步识别验证码函数说明:

方式一、DecodeSync 通过传入验证码图片URL地址请求打码,由打码兔控件负责下载上传,快速省时省心

/**
 功能:    请求打码
 函数名:   DecodeSync
 返回值:   >0 成功,返回验证码ID(用于调用ReportResult), <0失败,详见错误码定义 http://wiki.dama2.com/index.php?n=ApiDoc.ErrDef
 参数:    [in]pszFileURL - 验证码图片URL,最长511
        [in]pszCookie - 获取验证码所需Cookie,最长4095字节
        [in]pszReferer - 获取验证码所需Referer,最长511字节
        [in]usTimeout - 验证码超时时间,即过多久验证码将失效。单位秒。推荐120
        [in]ulVCodeTypeID - 验证码类型ID,请通过打码兔开发者后台您添加的软件中添加自己软件可能用到的验证码类型,并获取生成的ID http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY
        [out]pszVCodeText - 返回验证码结果字符,建议传入40字节缓冲区
        [out]pszRetCookie - 返回COOKIE,建议传入4096字节缓冲区。
*/

函数原型:int DecodeSync( const char *pszFileURL,
                        const char *pszCookie,
                        const char *pszReferer,
                        unsigned short usTimeout,
                        unsigned long ulVCodeTypeID,
                        char *pszVCodeText,
                        char *pszRetCookie);
------------------------------------------------------------------------------------------------------------------------------------------

方式二、DecodeBufSync 1、通过传入验证码图片数据流请求打码,开发者需要自行下载并打开验证码图片,获得图片数据后调用本函数请求打码;2、识别文本,如3+5=?

/**
 功能:    请求打码
 函数名:   DecodeBufSync
 返回值:   >0 成功,返回验证码ID(用于调用ReportResult), <0失败,详见错误码定义 http://wiki.dama2.com/index.php?n=ApiDoc.ErrDef
 参数:    [in]pImageData - 验证码图片数据 (此处也可直接填写文本,如:3+8+3=?或 中国的首都是哪里? 但注意pszExtName就得固定填写"TXT"。)
        [in]dwDataLen - 验证码图片数据或验证码文本数据长度,即pImageData大小,限制4M
        [in]pszExtName - 图片扩展名,如JPG、BMP、PNG、GIF,不知道图片类型,填JPG即可。
(如果pImageData不是图片数据而是文本,则填写"TXT"。)
        [in]usTimeout - 验证码超时时间,即过多久验证码将失效。单位秒。推荐120
        [in]ulVCodeTypeID - 验证码类型ID,请通过打码兔开发者后台您添加的软件中添加自己软件可能用到的验证码类型,并获取生成的ID http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY
        [out]pszVCodeText - 返回验证码结果字符,建议传入40字节缓冲区
*/
函数原型:int DecodeBufSync( LPVOID pImageData,
                        DWORD dwDataLen,
                        const char *pszExtName,
                        unsigned short usTimeout,
                        unsigned long ulVCodeTypeID,
                        char *pszVCodeText);
------------------------------------------------------------------------------------------------------------------------------------------

方式三、DecodeFileSync 通过传入本机验证码图片全路径请求打码,如:c:\1.jpg

/**
 功能:    请求打码
 函数名:   DecodeFileSync
 返回值:   >0 成功,返回验证码ID(用于调用ReportResult), <0失败,详见错误码定义 http://wiki.dama2.com/index.php?n=ApiDoc.ErrDef
 参数:    [in]pszFilePath - 验证码文件全路径,如c:\1.jpg
        [in]usTimeout - 验证码超时时间,即过多久验证码将失效。单位秒。推荐120
        [in]ulVCodeTypeID - 验证码类型ID,请通过打码兔开发者后台您添加的软件中添加自己软件可能用到的验证码类型,并获取生成的ID http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY
        [out]pszVCodeText - 返回验证码结果字符,建议传入40字节缓冲区
*/
函数原型:int DecodeFileSync( const char *pszFilePath,
                        unsigned short usTimeout,
                        unsigned long ulVCodeTypeID,
                        char *pszVCodeText);
------------------------------------------------------------------------------------------------------------------------------------------

方式四、DecodeWndSync 传入窗口定义串,打码兔负责帮您在指定窗口截图并上传请求打码

/**
 功能:    请求打码
 函数名:   DecodeWndSync
 返回值:   >0 成功,返回验证码ID(用于调用ReportResult), <0失败,详见错误码定义 http://wiki.dama2.com/index.php?n=ApiDoc.ErrDef
 参数:    [in]pszWndDef - 窗口定义字串,详见下面描述
        [in]lpRect - 要截取的窗口内容矩形(相对于窗口最左上角),NULL表示截取整个窗口内容
        [in]usTimeout - 验证码超时时间,即过多久验证码将失效。单位秒。推荐120
        [in]ulVCodeTypeID - 验证码类型ID,请通过打码兔开发者后台您添加的软件中添加自己软件可能用到的验证码类型,并获取生成的ID http://wiki.dama2.com/index.php?n=ApiDoc.GetSoftIDandKEY
        [out]pszVCodeText - 返回验证码结果字符,建议传入40字节缓冲区
*/
窗口定义字串,格式如下:
  
由"\n"分隔的多个子串组成,一个子串表示一级窗口查找的条件.第一级窗口须为顶级窗口
  每个子串由3个元素组成:窗口Class名,窗口名,窗口索引.元素之间以逗号(半角)分隔
    窗口类名:如不想通过类名查找,填"ANY_CLASS"
    窗口名:窗口的名字,如没有窗口名,填"ANY_NAME"
    序号:以1开始数字,1表示第1个窗口名和窗口类名符合的窗口,
      如序号不为1,则依次查找符合条件和序号的窗口
  窗口级最大为50级
  如要查找要查找第一个类名为"TopClass"窗口名不限的第二子窗口(类名和类名都不限),
  字串如下:
    TopClass,ANY_NAME,1\nANY_CLASS,ANY_NAME,2

函数原型:int DecodeWndSync( const char *pszWndDef,
                        LPCRECT lpRect,
                        unsigned short usTimeout,
                        unsigned long ulVCodeTypeID,
                        char *pszVCodeText);


=========================其它函数==================================

/**
 功能:    软件反初始化,释放系统资源
 函数名:   Uninit
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    无
*/

函数原型:void Uninit();


/**
 功能:    用户登出、用户注销
 函数名:   Logoff
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    无
*/

函数原型:int Logoff();


/**
 功能:    用户注册
 函数名:   Register
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    pszUserName - 用户名,最大31个字节
        pszUserPassword - 密码,最大16字节
        pszQQ - QQ号码,可为空,最大16字节
        pszTelNo - 手机号码,最大16字节,如果动态码发送方式为1或3,手机号则必填
        pszEmail - 邮箱,最大48字节,如果动态码发送方式为2或3,则邮箱必填
        nDyncSendMode - 动态码发送方式,1手机 2邮箱 3手机加邮箱
*/

函数原型:int Register(const char *pszUserName,
                          const char *pszUserPassword,
                          const char *pszQQ,
                          const char *pszTelNo,
                          const char *pszEmail,
                          int nDyncSendMode);


/**
 功能:    读取用户信息
 函数名:   ReadInfo
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    [out]pszUserName - 用户名,传入缓冲区最小需32字节
        [out]pszQQ - QQ号码,传入缓冲区最小需16字节
        [out]pszTelNo - 手机号码,传入缓冲区最小需16字节
        [out]pszEmail - 邮箱,传入缓冲区最小需48字节
        [out]pDyncSendMode - 动态码发送方式
*/

函数原型:int ReadInfo(char *pszUserName,
                          char *pszQQ,
                          char *pszTelNo,
                          char *pszEmail,
                          int *pDyncSendMode);


/**
 功能:    修改登录用户信息
 函数名:   ChangeInfo
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    pUserOldPassword - 旧密码,最大16字节
        pUserNewPassword - 新密码,最大16字节
        pszQQ - QQ号码,可为空,最大16字节
        pszTelNo - 手机号码,最大16字节,如果动态码发送方式为1或3,手机号则必填
        pszEmail - 邮箱,最大48字节,如果动态码发送方式为2或3,则邮箱必填
        pszDyncVCode - 动态验证码,第一次调用可传NULL,当有动态验证码后,填入用户输入的动态码再次调用。
        nDyncSendMode - 动态码发送方式,1手机 2邮箱 3手机加邮箱
*/

函数原型:int ChangeInfo(const char *pUserOldPassword,
                          const char * pUserNewPassword,
                          const char *pszQQ,
                          const char *pszTelNo,
                          const char *pszEmail,
                          const char *pszDyncVCode,
                          int nDyncSendMode);


/**
 功能:    请求打码
 函数名:   Decode
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    [in]pszFileURL - 验证码图片URL,最长511
        [in]pszCookie - 获取验证码所需Cookie,最长4095字节
        [in]pszReferer - 获取验证码所需Referer,最长511字节
        [in]ucVerificationCodeLen - 验证码长度,传入正确的验证码长度,将优先被识别。如果长度不定,可传0
        [in]usTimeout - 验证码超时时间,即过多久验证码将失效。单位秒。推荐120
        [in]ulVCodeTypeID - 验证码类型ID,请通过打码兔开发者后台您添加的软件中添加自己软件可能用到的验证码类型,并获取生成的ID
        [in]bDownloadPictureByLocalMachine - 是否本机下载,因为有些验证码绑定IP,不允许远程获取,如果此标志为TRUE,则打码兔控件将在您机器上自动下载图片并上传。
                        对于没有此限制的验证码,将会由打码用户端下载,效率更高!建议填FALSE
        [out]pulRequestID - 返回请求ID,为后面的GetResult取打码结果所用。
*/

函数原型:int Decode( const char *pszFileURL,
                        const char *pszCookie,
                        const char *pszReferer,
                        unsigned char ucVerificationCodeLen,
                        unsigned short usTimeout,
                        unsigned long ulVCodeTypeID,
                        bool bDownloadPictureByLocalMachine,
                        unsigned long *pulRequestID);


/**
 功能:    请求打码
 函数名:   DecodeBuf
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    [in]pImageData - 验证码图片数据
        [in]dwDataLen - 验证码图片数据长度,即pImageData大小,限制4M
        [in]pszExtName - 图片扩展名,如JPEG、BMP、PNG、GIF
        [in]ucVerificationCodeLen - 验证码长度,传入正确的验证码长度,将优先被识别。如果长度不定,可传0
        [in]usTimeout - 验证码超时时间,即过多久验证码将失效。单位秒。推荐120
        [in]ulVCodeTypeID - 验证码类型ID,请通过打码兔开发者后台您添加的软件中添加自己软件可能用到的验证码类型,并获取生成的ID
        [out]pulRequestID - 返回请求ID,为后面的GetResult取打码结果所用。
*/

函数原型:int DecodeBuf( LPVOID pImageData,
                        DWORD dwDataLen,
                        const char *pszExtName,
                        unsigned char ucVerificationCodeLen,
                        unsigned short usTimeout,
                        unsigned long ulVCodeTypeID,
                        unsigned long *pulRequestID);


/**
 功能:    请求打码
 函数名:   DecodeWnd
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    [in]pszWndDef - 窗口定义字串,详见下面描述
        [in]lpRect - 要截取的窗口内容矩形(相对于窗口最左上角),NULL表示截取整个窗口内容
        [in]ucVerificationCodeLen - 验证码长度,传入正确的验证码长度,将优先被识别。如果长度不定,可传0
        [in]usTimeout - 验证码超时时间,即过多久验证码将失效。单位秒。推荐120
        [in]ulVCodeTypeID - 验证码类型ID,请通过打码兔开发者后台您添加的软件中添加自己软件可能用到的验证码类型,并获取生成的ID
        [out]pulRequestID - 返回请求ID,为后面的GetResult取打码结果所用。
*/

函数原型:int DecodeWnd( const char *pszWndDef,
                        LPCRECT lpRect,
                        unsigned char ucVerificationCodeLen,
                        unsigned short usTimeout,
                        unsigned long ulVCodeTypeID,
                        unsigned long *pulRequestID);


/**
 功能:    取验证码识别结果
 函数名:   GetResult
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    [in]ulRequestID - 验证码请求ID,由Decode、DecodeBuf、DecodeWnd等函数返回
        [in]ulTimeout - GetResult函数等待超时时间(单位为毫秒),如果填0函数将不阻塞立即返回,如果返回值为ERR_CC_NO_RESULT,则需由开发者循环调用直到返回成功或其它错误。
                如果填有效超时时间,函数将阻塞等待结果,如果等到结果会立即返回,没等到将在超时时间后返回。
        [out]pszVCode - 验证码识别结果,将通过本参数返回识别结果
        [in]ulVCodeBufLen - 接收验证码识别结果缓冲区大小,即pszVCode缓冲区大小
        [out]pulVCodeID - 返回验证码ID,如果调用成功取到验证码结果,开发者需保存此验证码ID,用于ReportResult函数报告验证码结果的成功失败状态。
        [out]pszReturnCookie - 传回下载验证码图片时返回的Cookie
        [in]ulCookieBufferLen - 接收传回cookie的缓冲区大小,即pszReturnCookie的大小
*/

函数原型:int GetResult(unsigned long ulRequestID,
                          unsigned long ulTimeout,
                          char *pszVCode,
                          unsigned long ulVCodeBufLen,
                          unsigned long *pulVCodeID,
                          char *pszReturnCookie,
                          unsigned long ulCookieBufferLen);


/**
 功能:    报告验证码结果正确性
 函数名:   ReportResult
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    ulVCodeID - 验证码ID,使用GetResult函数返回的验证码ID
        bCorrect - TRUE正确 FALSE 错误
*/

函数原型:int ReportResult(unsigned long ulVCodeID,
                        bool bCorrect);


/**
 功能:    用户充值
 函数名:   Recharge
 返回值:   0 成功, 其它失败,详见错误码定义
 参数:    [in]pszUserName - 充值用户名,最大32字节
        [in]pszCardNo - 充值卡号,32字节
        [out]pulBalance - 返回用户充值后的余额
*/

函数原型:int Recharge(const char *pszUserName,
                        const char *pszCardNo,
                        unsigned long *pulBalance);


/**
 功能:    获取原错误码
 函数名:   GetOrigError
 返回值:   0 成功 其它 - 原错误码
 参数:    无
*/

函数原型:int CRACKCAPTCHA_API GetOrigError();


/**
 功能:    向图片写入文本
 函数名:   WriteStringToPic
 返回值:   0 成功 其它 - 原错误码
 参数:    pszPicFileName - 图片文件名
        pszStrInfo - 文本信息,格式如下:
  (x,y)(font,fontsize)(r,g,b)要写的字串|(x,y)(font,fontsize)(r,g,b)要写的字串|...
  x,y :坐标,大于等于0,左上角为(0,0)
  r,g,b : 颜色,r红,g绿,b兰色。如红色为(255,0,0)
  font :字体名,如宋体、黑体等
  fontsize: 字体尺寸,一般用20
*/

函数原型:int CRACKCAPTCHA_API WriteStringToPicture(
  const char *pszPicFileName,
  const char *pszStrInfo);


编辑 - 版本历史 - 打印 - 最近更改 - 搜索
本页面最后修订于:2016年-08月-16日