简而言之,此插件使用Hex-Rays反编译器反编译给定的文件,分析伪代码的属性,然后将结果附加到
.csv
现在我尝试在批处理模式下使用它,但由于发生以下情况而陷入困境:
调用IDA的Cmd输入:
idaw -A -c -Srecompile.idc input_file
recompile.idc
文件:#include <idc.idc>
static main() {
Wait();
Message("Hello world from IDC!\n");
RunPlugin("REcompile vs Hexrays",0);
//Exit(0);
}
我显然需要
Wait()
进行自动分析。 Exit()
已被注释,因为它已固定使用,现在可以使用。现在我在执行时得到以下输出:
The initial autoanalysis has been finished.
Hello world from IDC!
LoadLibrary(C:\Program Files (x86)\IDA\plugins\REcompile vs Hexrays.plw) error: Das angegebene Modul wurde nicht gefunden.
C:\Program Files (x86)\IDA\plugins\REcompile vs Hexrays.plw: can't load file
Hex-Rays Decompiler plugin has been loaded (v1.6.0.111005)
Hex-rays version 1.6.0.111005 has been detected, REcompile vs Hexrays ready to use
可以在加载插件之前看到脚本已执行。我认为这就是为什么我会收到
LoadLibrary
错误的原因。如果您对插件批处理执行还有其他意见或经验,我将很高兴收到您的来信。 >问候,
Viktor
#1 楼
您是否在加载插件之前尝试过手动加载Hex-Rays插件?例如:
#include <idc.idc>
static main() {
Wait();
Message("Hello world from IDC!\n");
RunPlugin("hexrays",0);
RunPlugin("REcompile vs Hexrays",0);
//Exit(0);
}
评论
非常感谢,这解决了。我实际上犯了一个双重错误,即使用了wanted_name()而不是.plw文件名。再次感谢!
– Viktor K
14年7月24日在16:05
很高兴它有效!是的,关于RunPlugin()的第一个参数的文档不是很清楚。
–詹森·格夫纳(Jason Geffner)
2014年7月24日在16:33