在IDAPython中,ea_t
数据类型是什么?它在set_debug_name()
函数中的使用如下:
bool set_debug_name(ea, name)
如果我有一个 64 位地址,它可以用ea_t
数据类型表示吗?
例如,在这个 Python 脚本中:
line = "ffffffff81000000 T startup_64"
addr = int(line[:16],16)
name = line[19:]
idaapi.set_debug_name(addr,name)
我在执行 IDA Python 脚本时收到此错误:
TypeError: Expected an ea_t type
来自 IDA Pro:
Python> from idaapi import *
Python> line="ffffffff81000000 T startup_64"
Python> addr=int(line[:16],16)
Python> name=line[19:]
Python> print "addr: %x" %(addr)
addr: ffffffff81000000
Python> print name
startup_64
Python> set_debug_name(addr,name)
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "X\IDA Pro\IDA61\python\idaapi.py", line 23612, in set_debug_name
return _idaapi.set_debug_name(*args)
TypeError: Expected an ea_t type
idaapi.py
32 位和 64 位 IDA Pro 版本的文件是否不同?
我使用的是 32 位版本的 IDAPro。