找回密码
 加入
搜索
查看: 2585|回复: 3

[系统综合] 【已解决】有个dll,有c++调用例子,求AU3调用例子。

[复制链接]
发表于 2011-6-16 16:02:56 | 显示全部楼层 |阅读模式
本帖最后由 netsmu 于 2011-6-16 16:51 编辑

// Sunday.dll演示程序。
//

#include <iostream>
#include <Windows.h>

int main()
{
        HINSTANCE hInst = LoadLibraryA("Sunday.dll");//载入Sunday.dll
        if (!hInst)
        {
                std::cout<<"无法加载 Sunday.dll!";
                getchar();
                return 0;
        }

        //-----------LoadCdsFromFile------------
        typedef int (CALLBACK* LPLoadCds)(char[]);
        LPLoadCds LoadCdsFromFile = (LPLoadCds)GetProcAddress(hInst, "LoadCdsFromFile");

        int index = LoadCdsFromFile ("yzm");//载入识别库

        if (index == -1)//返回-1说明载入识别库出错
        {
                std::cout<<"载入识别库出错。";
                getchar();
                return 0;
        }


        //-----------GetVcodeFromFile------------
        typedef bool (CALLBACK* LPGetVcode)(int,char[],char[]);
        LPGetVcode GetVcodeFromFile = (LPGetVcode)GetProcAddress(hInst, "GetVcodeFromFile");

        char result[5];//定义一个字符串以接受验证码,这里验证码字符数是4,所以取5.

        if (GetVcodeFromFile(index,"1.jpg",result))
                std::cout<<"验证码识别成功:"<<result;
        else
                std::cout<<"验证码识别失败!";
        getchar();
        return 0;
}

这个是c++调用dll的例子,求au3调用这个dll的函数,谢谢啦。
 楼主| 发表于 2011-6-16 16:50:15 | 显示全部楼层
$dll = DllOpen("Sunday.dll")
$aa = dllcall($dll,"int","LoadCdsFromFile","str","yzm")
$bb = ''
$disn = dllcall($dll,"BOOL","GetVcodeFromFile","int",$aa[0],"str","1.jpg","str",$bb)
MsgBox(0,$disn[0],$disn[3])

搞定了,谢谢各位。
发表于 2011-6-16 16:52:49 | 显示全部楼层
呵呵,有好东西就推荐给大家公用吧
 楼主| 发表于 2011-6-16 16:57:25 | 显示全部楼层
不是什么好东西啦,这个是请别人制作的,也就只能识别特制的验证码,其他验证码识别不了,而且不是我做的,所以不方便公开,抱歉了。
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-11-15 14:35 , Processed in 0.070434 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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