• 欢迎访问,如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

关于DLL调用的问题

C语言 码拜 3年前 (2017-04-30) 246次浏览
在网上下载了一个找图源码不知道该怎么样写个小程序测试一下(即调用),望前辈们指点一下,

#ifndef _FINDPROC_H_H
#define _FINDPROC_H_H
#include "windows.h"
//定义一个点的链表
struct Points
{
	POINT pts;
	struct Points *next;
};
void GetScreenData(int dx,int dy);      //获得屏幕信息
void GetBmpData(LPCTSTR lpszName);      //获得图片信息
int ReleaseLP();                       //释放堆区
int GetScrPixel(int x,int y);           //获得屏幕图片指定点的颜色
int GetBmpPixel(int x,int y);           //获得图片上指定点的颜色
int FindColor(int x1,int y1,int x2,int y2,COLORREF color,int &fx,int &fy);    //在一个区域中找到给定颜色的坐标
POINT FindFirstPoint(int x1,int y1,int x2,int y2);               //在屏幕中找与图片第一个点相同颜色的坐标
int Compare(POINT pt);                     //比较屏幕pt点位图矩形大小的全部颜色和位置能否与位图相同
int FindBmpBuf(int x1,int y1,int x2,int y2,int &fx,int &fy);
int FindBmp(int x1,int y1,int x2,int y2,LPCTSTR lpszName,int &fx,int &fy); //在屏幕中找指定的位图的坐标
int CompareEx(POINT pt,int backcolor,int errorcolor,int errorcount);     //扩展去除一些颜色
int FindBmpEx(int x1,int y1,int x2,int y2,LPCTSTR lpszName,int backcolor,int errorcolor,int errorcount,int &fx,int &fy);
////忽略位图backcolor颜色点,颜色偏差errorcolor,允许不匹配点的个数errorcount
#endif
解决方案

10

引用:

要不确认下OK.lib中能否有 FindBmp(int,int,int,int,char const *,int &,int &)
可以使用记事本类软件直接打开,搜索进行确认

dumpbin /EXPORTS OK.lib | find /i “FindBmp”

10

int __cdecl FindBmp(int,int,int,int,wchar_t const *,int &,int &)
原因是第5个参数应该是wchar_t const *类型
所以
FindBmp(0,0,1024,768,”123.bmp”,  a, b);
应改为
FindBmp(0,0,1024,768,L“123.bmp”,  a, b);

CodeBye 版权所有丨如未注明 , 均为原创丨本网站采用BY-NC-SA协议进行授权 , 转载请注明关于DLL调用的问题
喜欢 (0)
[1034331897@qq.com]
分享 (0)