求救啊:只有LIB和DLL文件没有.h文件,该如何使用里面的函数呢

LittleNumb 2012-05-12 02:56:19
我现在有jpegenc.dll和jpegenc.lib,从说明文档里知道里面的函数名

typedef enum
{
EType_JpegEncDecResultSucceed = 0, // 成功
EType_JpegEncDecResultFailed = -1, // 参数不正确

}EJpegEncDecResult;

EJpegEncDecResult JpegDecEncOpen(void **ppvHandle);
EJpegEncDecResult JpegDecEncGetHeader(void *pvHandle, TDecEncInput *ptInput, TDecEncOutputInfo *ptOutput);
EJpegEncDecResult JpegDecEncProcess(void *pvHandle, TDecEncInput *ptInput, TDecEncOutput *ptOutput);
EJpegEncDecResult JpegDecEncClose(void *pvHandle);


但是运行就出现这种错,后面的的红色部分是啥意思啊?
Linking...
test.obj : error LNK2001: unresolved external symbol "enum EJpegEncDecResult __cdecl JpegDecEncProcess(void *,struct TDecEncInput *,struct TDecEncOutput *)" (?JpegDecEncProcess@@YA?AW4EJpegEncDecResult@@PAXPAUTDecEncInput@@PAUTDecEncOutput@@@Z)
test.obj : error LNK2001: unresolved external symbol "enum EJpegEncDecResult __cdecl JpegDecEncClose(void *)" (?JpegDecEncClose@@YA?AW4EJpegEncDecResult@@PAX@Z)
test.obj : error LNK2001: unresolved external symbol "enum EJpegEncDecResult __cdecl JpegDecEncOpen(void * *)" (?JpegDecEncOpen@@YA?AW4EJpegEncDecResult@@PAPAX@Z)
Debug/test_ecode.exe : fatal error LNK1120: 3 unresolved externals
执行 link.exe 时出错.

test_ecode.exe - 1 error(s), 0 warning(s)
...全文
511 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
LittleNumb 2012-05-12
  • 打赏
  • 举报
回复
知识匮乏啊,看来要好好充电了
炮酱 2012-05-12
  • 打赏
  • 举报
回复
你不就是在使用dll中的函数么?dll中的函数编写要导出,使用要导入…………具体内容还是在dll的编写与调用方面
LittleNumb 2012-05-12
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]

加上__declspec(dllimport)或者extern "C" __declspec(dllimport)试试?

__declspec(dllimport) EJpegEncDecResult JpegDecEncOpen(void **ppvHandle);
[/Quote]

加上extern "C" __declspec(dllimport)可以运行了,谢谢了!
不过加的这个部分不是在编写DLL时使用的么?
我们在用系统lib,调用其中的函数貌似没有这个吧。
能给个解释么?
swent 2012-05-12
  • 打赏
  • 举报
回复
加上__declspec(dllimport)或者extern "C" __declspec(dllimport)试试?

__declspec(dllimport) EJpegEncDecResult JpegDecEncOpen(void **ppvHandle);
LittleNumb 2012-05-12
  • 打赏
  • 举报
回复
在线等大神指点啊,第一次用别人的dll和lib呀,以前函数什么的都是自己写,现在完全不知道该怎么使用啊
LittleNumb 2012-05-12
  • 打赏
  • 举报
回复
加了,开始没加,提示找不到文件,加过之后就出现以上问题了
wltg2001 2012-05-12
  • 打赏
  • 举报
回复
加了#pragma comment(lib,"jpegenc.lib")了吗?

15,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 进程/线程/DLL
社区管理员
  • 进程/线程/DLL社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧