Macos OSX 10.6(&;Qt):检查正在运行的进程的位性-即使在32位兼容模式下

Macos OSX 10.6(&;Qt):检查正在运行的进程的位性-即使在32位兼容模式下,macos,qt,process,64-bit,32-bit,Macos,Qt,Process,64 Bit,32 Bit,如何在正在运行的进程中检查自身的位状态:这意味着是“英特尔”(32位)还是“英特尔(64位)”,因为我想根据该结果设置某个限制。 问题是,在编译时检查没有帮助,因为可以使用Finder>Information将兼容模式设置为32位 (Qt内部)是否有类似Windows的IsWow64Process命令?我假设您想了解机器硬件,而不是代码正在运行的当前进程体系结构 Shell命令uname-m将返回底层硬件的名称。在64位机器上,它将返回strig“x86_64” 用于调用命令并检查返回的数据。我

如何在正在运行的进程中检查自身的位状态:这意味着是“英特尔”(32位)还是“英特尔(64位)”,因为我想根据该结果设置某个限制。 问题是,在编译时检查没有帮助,因为可以使用
Finder>Information
将兼容模式设置为32位


(Qt内部)是否有类似Windows的
IsWow64Process命令

我假设您想了解机器硬件,而不是代码正在运行的当前进程体系结构

Shell命令
uname-m
将返回底层硬件的名称。在64位机器上,它将返回strig“x86_64”


用于调用命令并检查返回的数据。

我假设您想知道机器硬件,而不是代码正在运行的当前进程体系结构

Shell命令
uname-m
将返回底层硬件的名称。在64位机器上,它将返回strig“x86_64”


用于调用命令并检查返回的数据。

有一个编译器定义的预处理器宏
\uuuu LP64\uuuu
,该宏在64位代码中为真。这是一个编译时检查,但没关系。使用查找器打开或关闭32位模式的唯一方法是为这两种体系结构编译代码。

有一个编译器定义的预处理器宏
\uuuu LP64\uuu
,在64位代码中为真。这是一个编译时检查,但没关系。使用Finder打开或关闭32位模式的唯一方法是编译两种体系结构的代码。

没有帮助,因为我不会检查硬件。运行过程的“比特性”是个问题/procinfo不适用于OSX:/Not help,因为我不会检查硬件。运行过程的“比特性”是个问题/procinfo不适用于OSX:/Yeah,应用程序中有两种模式的代码。解决方案是检查是否定义了Q_WS_MAC32?否则Q_WS_MAC64可用。看起来“32位模式”不是通过模拟某个东西来实现的,而是通过选择应用程序中的32位二进制文件来实现的。因此,一切都比预期的容易。是的,应用程序中有两种模式的代码。解决方案是检查是否定义了Q_WS_MAC32?否则Q_WS_MAC64可用。看起来“32位模式”不是通过模拟某个东西来实现的,而是通过选择应用程序中的32位二进制文件来实现的。因此,一切都比预期的容易。