Delphi内联汇编器指向结构体的指针
大家好,有没有一种方法可以直接从内联汇编器访问指向结构成员的指针,我尝试了这个
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;
,效果很好。知道如何通过内联指针访问结构吗汇编?是优化代码的问题
Hi people is there a way i can access a pointer to a structure member directly from in line assembler i tried this
procedure test(eu:PImageDosHeader);assembler;
asm
push eu._lfanew
end;
It won't compile but if i use this
procedure test(eu:Pointer);
var
xx:TImageDosHeader;
begin
xx:=TImageDosHeader(eu^);
asm
push xx._lfanew
end;
end;
It works great.Any idea how can i access a structure trough a pointer in inline asm? is a matter of optimizing the code
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
还有一个解决方法:
Yet another workaround:
以下作品:
The following works:
我会这样写:
相关文档位于此处。
I would write it like this:
The pertinent documentation is here.