I'm using IDA batch scripting to run a script on a dataset of malware

the problem is i need to run the VB6 idc script after auto analysis is finished, and wait for it to finish and find all the functions, then run my own script (my script is in IDApython and VB6 script is a idc file)

to manually run this VB6 script i go to file and choose script file ( there is no menu button or shortcut added) and wait for it to finish and find all VB6 functions

so what is the easiest way to achieve this? can i execute a idc script from my IDApython script and wait for it to finish?

  • I'd try to do it with 2 batch runs one after another: first runs idc script, saves the database and quits, then second runs the idapython.
    – w s
    Commented Jul 11, 2020 at 6:20
  • @ws so theres no way to do this with IDApython? because i want to first use my first script to check if some conditions are met, if so then run the second script
    – Mery Ted
    Commented Jul 11, 2020 at 7:56
  • You can run idapython statement from IDC, (hex-rays.com/products/ida/support/idadoc/1127.shtml ). This means that you can run IDC script and call the python in its end.
    – w s
    Commented Jul 11, 2020 at 8:54

1 Answer 1


Found it in IDAPython documentation.

  • There is a function exec_idc_script here in module ida_expr.I never used it myself but according to the spec it should work.
  • In addition there is a RunPythonStatement in IDC if you need to do it conversely.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.