|
马上加入TC
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
最近要用到位图之间的对比,无奈 写了个易语言的DLL,想通过此DLL调用实现TC对比位图的功能,但是头疼的事情来了,写好的DLL在易语言里可以被调用,返回值 正常.
在TC里确一直返回 空,求助.附上DLL源码以及DLLCALL代码
.版本 2
.支持库 BmpOperate
.子程序 位图对比, 整数型, 公开
.参数 图片路径1, 文本型
.参数 图片路径2, 文本型
.参数 相似度, 整数型
.局部变量 对象1, 位图
.局部变量 对象2, 位图
.局部变量 相同, 整数型
.局部变量 不同, 整数型
.局部变量 i, 整数型
.局部变量 j, 整数型
对象1.载入文件 (图片路径1)
对象2.载入文件 (图片路径2)
.计次循环首 (对象1.取宽度 (), i)
.计次循环首 (对象1.取高度 (), j)
.如果 (取绝对值 (对象1.取某点颜色 (i, j) - 对象2.取某点颜色 (i, j)) < 5)
相同 = 相同 + 1
.否则
不同 = 不同 + 1
.如果结束
.计次循环尾 ()
.计次循环尾 ()
.如果 (相同 ÷ (不同 + 相同) × 100 ≥ 相似度)
返回 (1)
.否则
返回 (0)
.如果结束
--------------------------以上是易语言DLL源码
分别输入两张图片的路径参数(文本型),输入相似度 整数型,相似 返回1,不同就返回0,返回值 整数型
-------------------------以下是DLLCALL代码
调试输出(dllcall("E:\\好戏\\好戏\\资源\\bmp.dll","int","位图对比","char *","C:\\Users\\Administrator\\Desktop\\骗子\\图片1.bmp","char *","C:\\Users\\Administrator\\Desktop\\骗子\\图片2.bmp","int",60))
返回值 始终是空,问题出在哪里?求助啊~~~~~~~~~~~~~~~~
|
|