嗨,人们有没有办法我可以直接从在线汇编器中访问结构成员的指针,我试过了

procedure test(eu:PImageDosHeader);assembler;
asm
    push eu._lfanew
end;

它不会编译,但是如果我用这个
procedure test(eu:Pointer);
var
 xx:TImageDosHeader;
 begin
 xx:=TImageDosHeader(eu^);
 asm
     push xx._lfanew
 end;
 end;

它很好用,任何想法我如何通过内联asm中的指针访问结构?是优化代码的问题

最佳答案

另一个解决方法:

procedure test(eu:PImageDosHeader);
asm
    push eu.TImageDosHeader._lfanew
end;

关于Delphi内联汇编器结构指针,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/7621224/

10-11 18:33