我遇到了一个Win64调试问题,看起来我们“丢失”了调试信息。所以我做了一些研究,并重新创建了我们旗舰产品的所有.dproj文件。这有所帮助,因为我恢复了我的“丢失”的蓝色小球。 但是现在我遇到了一个新的问题:堆栈显示窗口中显示的(顶部)堆栈帧似乎是错误的,导致本地变量不在本地变量窗格中显示...
我只安装了32位的Windows,所以无法亲自验证。 如果我理解正确,在Microsoft API中各处使用的DWORD是指原始的16位字,并且与当前的硬件架构无关? 所以DWORD似乎是32位,即使最终将我的应用程序编译和链接以在64位Windows上运行,DWORD仍将保持32位吗?还...
如何在64位Windows(当前为XP-64)下,用户空间程序配置“GS:”?(通过将GS:0设置为任意64位线性地址进行配置) 我正在尝试将最初开发为Win32的“JIT”环境移植到X86-64。 不幸的是,相同的代码需要在多个用户空间线程(例如“纤程”)上运行。该代码在Win32版本中...
我想将 c:\Windows\regedit.exe复制到与 regedit2.exe相同的目录中,但是当我尝试复制时,我遇到了一个错误,说找不到regedit.exe文件,有时会将其复制到windows\SysWOW64目录下。实际上,我知道win64正在重定向它,但是如何禁用重定向并将wi...
Win64平台上虚拟分配粒度和页面大小的典型值是什么?这对应于SYSTEM_INFO结构体中的dwAllocationGranularity和dwPageSize参数。 在Win32系统上,它们分别为64k和4k。 我需要知道这些信息,因为我已经为一个Win32应用程序设计了一个基于Vir...
刚开始学习 x64 汇编,我对函数、参数和堆栈有个问题。据我所知,在 Windows 中,一个函数的前四个参数通过 rcx、rdx、r8 和 r9 寄存器传递(对于浮点数还会使用 xmm0-xmm3 寄存器)。因此,一个带有四个参数的简单加法函数应该如下所示:add: mov r10, ...
我正在学习Windows上的x64汇编语言,这是出于兴趣。根据Windows x64调用约定的MSDN文档所述: 调用者负责为被调用方分配参数空间,并且必须始终为4个寄存器参数分配足够的空间,即使被调用方没有那么多参数。这有助于支持C未经声明的函数和变参的C/C++函数的简单性。 由于我的...
当我尝试导入enchant时,为什么会出现标题中的错误信息?我使用的是Win64操作系统。
我们有一个大型的Delphi XE代码库,我们想要将其移植到64位平台上。 我拥有Delphi XE2许可证,但我找不到任何警告或提示,可以帮助我检测在64位平台下可能导致数据丢失的有效32位结构。例如,在32位编译器中完全有效的THandle到Cardinal赋值,在编译Win64时不会引...