首页
社区
课程
招聘
[求助]编写<<软件加密技术内幕>>PE分析器时遇到的编译错误
2006-5-9 10:56 7798

[求助]编写<<软件加密技术内幕>>PE分析器时遇到的编译错误

2006-5-9 10:56
7798
在编写<<软件加密技术内幕>>第二章时遇到一个错误如下

PE error LNK2019: 无法解析的外部符号 __imp__ImageRvaToVa@16 ,该符号在函数 "void * __cdecl RvaToPtr(struct _IMAGE_NT_HEADERS *,void *,unsigned long)" (?RvaToPtr@@YAPAXPAU_IMAGE_NT_HEADERS@@PAXK@Z) 中被引用

是在编写Import Table时调用函数ImageRvaToVa出错
我是在winXP下用.net做的

书中page53说到GetDirectoryEntryToData函数已经在介绍输出表的时候说明了,我找不到,输出表这一部分我还没做到,谁能说一下具体在哪一页吗?

一般遇到LNK错误应该如何处理,目前最怕就是这个错误,对它无从下手

我上传了源文件,某位仁兄帮我解决错误的不胜感激,不过要告诉我是如何解决的

[培训]《安卓高级研修班(网课)》月薪三万计划,掌 握调试、分析还原ollvm、vmp的方法,定制art虚拟机自动化脱壳的方法

上传的附件:
收藏
点赞0
打赏
分享
最新回复 (10)
雪    币: 208
活跃值: (42)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
wenstory 1 2006-5-10 16:41
2
0
没人帮忙吗?
给点提示也好啊
雪    币: 2367
活跃值: (756)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
小虾 10 2006-5-10 16:55
3
0
PE error LNK2019: 无法解析的外部符号 __imp__ImageRvaToVa@16 ,该符号在函数 "void * __cdecl RvaToPtr(struct _IMAGE_NT_HEADERS *,void *,unsigned long)" (?RvaToPtr@@YAPAXPAU_IMAGE_NT_HEADERS@@PAXK@Z) 中被引用

ImageRvaToVa函数未定义及实现。我看了一下你的源码,找不到ImageRvaToVa的定义及实现代码。
雪    币: 2367
活跃值: (756)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
小虾 10 2006-5-10 16:59
4
0
ImageRvaToVa是在Imagehlp.h文件中定义的,你可以试试引入这个文件
雪    币: 22
活跃值: (390)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
crazybug 2 2006-5-11 11:12
5
0
Header: Declared in Dbghelp.h.
Library: Use Dbghelp.lib.
雪    币: 208
活跃值: (42)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
wenstory 1 2006-5-13 10:29
6
0
前两天电脑无法上网,现在才看到
比较了一下我的程序和光盘的程序
课本调用的是imagehlp.h
在我的程序里
#include <imagehlp.h>
就会报求助的那个错误
#include <dbghlp.h>
就报f:\C++\PE\PEFun.cpp(5): fatal error C1083: 无法打开包含文件:“dbghlp.h”: No such file or directory
我在目录C:\Program Files\Microsoft Visual Studio .NET 2003\Vc7\include下找不到这2个文件
请问是我的include文件夹没有这2个函数的问题吗?
谁能上传这2个文件给我,多谢!
雪    币: 2367
活跃值: (756)
能力值: (RANK:410 )
在线值:
发帖
回帖
粉丝
小虾 10 2006-5-13 11:09
7
0
楼下的正确。
雪    币: 389
活跃值: (912)
能力值: ( LV9,RANK:770 )
在线值:
发帖
回帖
粉丝
kyc 19 2006-5-13 12:57
8
0
#include <imagehlp.h>
#pragma comment ( lib, "imagehlp.lib" )
雪    币: 22
活跃值: (390)
能力值: ( LV6,RANK:90 )
在线值:
发帖
回帖
粉丝
crazybug 2 2006-5-15 18:20
9
0
我查的是PLATFORM SDK 2003 DOCUMENT里

#include <Dbghelp.h>
#pragma comment ( lib, "Dbghelp.lib" )
也没问题
难道在PLATFORM SDK 2003里就变成了Dbghelp?
雪    币: 223
能力值: (RANK:130 )
在线值:
发帖
回帖
粉丝
hefei2 3 2006-5-16 23:18
10
0
改好了,自己看。
上传的附件:
雪    币: 208
活跃值: (42)
能力值: ( LV4,RANK:50 )
在线值:
发帖
回帖
粉丝
wenstory 1 2006-5-17 17:44
11
0

多谢各位大虾的帮忙
已经做好了
游客
登录 | 注册 方可回帖
返回