0xgalz / Virtuailor

IDAPython tool for creating automatic C++ virtual tables in IDA Pro
GNU General Public License v3.0
1.26k stars 129 forks source link

Supported IDA versions? #8

Closed apmorton closed 4 years ago

apmorton commented 4 years ago

What versions of IDA is this expected to work with?

With a stock install of IDA 7.4 the script fails with errors like:

Main.py: 'module' object has no attribute 'MinEA'
Traceback (most recent call last):
  File "C:\Program Files\IDA Pro 7.4\python\2\ida_idaapi.py", line 622, in IDAPython_ExecScript
    exec(code, g)
  File "Main.py", line 47, in <module>
    start_addr_range = idc.MinEA()  # You can change the virtual calls address range
AttributeError: 'module' object has no attribute 'MinEA'

(and similar errors with undefined names in the idc module if I manually specify an EA range)

It seems like this was build using a pretty old version of ida?

Levak commented 4 years ago

I am wondering the same. Here IDA 6.6, No module named ida_frame from vtableAddress.py

0xgalz commented 4 years ago

Hello,

Every few version Hex-Rays team changes the IDAPython API, I'm planning to convert the code to support IDA 7.4 and above soon (I will keep the tool compatible with older versions from 7.0). Unfortunately, the tool does not support versions older than 7.0 (Since the API was changed in this version too) and because the majority of people do not use older versions than 7 I will have no time to work on this too.

Thanks, will update when the new version will be up.

jmpews commented 4 years ago

https://github.com/idapython/src/blob/master/tools/gen_idc_bc695.py

or

add import idc_bc695 after import idc to redefine the deprecated api.

0xgalz commented 4 years ago

Virtuailor now supports the new IDA versions from 7.4, The older versions between 7.0 to 7.4 are also supported in branch beforeIDA-7.4.