我有一个简单的python脚本,我为IDA写的,但我无法弄清楚我做错了什么。
file = open("c:\\example.txt", "r")
for line in file:
if line == "":
pass
else:
addr = line.split(None,1)
if len(addr) < 2:
pass
else:
address = ''.join(addr[0])
if(idc.Jump(address)):
sea = ScreenEA()
else:
print "There is a problem with the destenation address"
counter = 0
for l in addr[1]:
PatchByte(sea+counter, ord(l))
counter += 1
file.close()
来自example.txt
档案的行:
0x1001b3a4 Kernel32.DLL
0x1001b3c8 CreateToolhelp32Snapshot
我得到的错误信息是:
对我来说很明显,错误发生在if(idc.Jump(address)):
行,我试图用if(Jump(addr[0])):
调用它,但我收到了相同的错误消息。
我在官方文档中看到了Jump
函数,但似乎我正在向它传递正确的参数。
可能是什么问题?
答案 0 :(得分:2)
我认为问题在于您将字符串传递给Jump()
。根据{{3}},它必须是long
。