ARTICLE DETAIL

建站实战干货

来自一线的建站与推广经验沉淀,每一条都经过真实交付验证。

delphi PE 文件解析错误问题及解决方案

2026/8/7 15:57:48 拓冰建站 浏览量
delphi PE 文件解析错误问题及解决方案

问题:在delphi12和13中运行语句“section := PIMAGE_SECTION_HEADER(IMAGE_FIRST_SECTION(module.headers{$IFNDEF FPC}^{$ENDIF}));”时会出现错误。

真因:

编译器 IMAGE_FIRST_SECTION 期望的参数
旧版 Delphi 需要 ^ 解引用,宏内部用 ^ 取地址
Free Pascal 直接传递指针,不需要 ^
新版 Delphi (12+) 函数签名改变,直接传递指针

解决方案:

{$IF CompilerVersion >= 36}  // Delphi 12+ ( Athens )section := PIMAGE_SECTION_HEADER(IMAGE_FIRST_SECTION(module.headers));
{$ELSE}section := PIMAGE_SECTION_HEADER(IMAGE_FIRST_SECTION(module.headers{$IFNDEF FPC}^{$ENDIF}));
{$IFEND}