#1 楼
下面的代码对我来说很好,可以作为Visual C ++中的.cpp
文件进行编译: (文件扩展名为.c
)文件?评论
您显然已经对编译器做出了假设,因此您应该添加可以编译的编译器(和版本)。
– 0xC0000022L♦
2013年4月30日14:07
我没有对他的编译器做任何假设...“错误C2143:语法错误:'*'之前缺少')'是VC ++编译器错误,我在VC ++上测试了我的代码。
–詹森·格夫纳(Jason Geffner)
13年4月30日在14:12
我同意。但是哪个版本?也取决于(__thiscall)是否将其放入.cpp或.c文件中;)...您什么都没有提及,OP也没有提及。我觉得这个问题措辞极差。
– 0xC0000022L♦
2013年4月30日14:12
实际上,您提出了一个很好的观点。似乎是因为OP使用的是.c文件而不是.cpp文件。
–詹森·格夫纳(Jason Geffner)
13年4月30日在14:16
评论
您尝试使用哪个编译器(和版本)?请编辑您的问题。此外,由于涉及到正向工程,因此这似乎是题外话-是的,我意识到所使用的工具主要用于RCE。@ 0xC0000022L我同意该问题缺少重要信息,但是,我发现此问题与站点有关。反编译是RE过程的一部分,编译输出与RE绝对相关。
它不会解决呼叫类型丢失的问题,但是您应该在文件中包含“ defs.h”(在hexrays sdk中找到),它包含hexrays使用的多个宏。
o,这是错误的,显然是没有为您的编译器定义'__thiscall',您应该对它进行'#define __thiscall'来消除此特定错误