Components All New MacOS Windows Linux iOS
Examples Mac & Win Server Client Guides Statistic FMM Blog Deprecated Old

SystemInfo.WindowsSystemInfo

Queries system information on Windows.

Component Version macOS Windows Linux Server iOS SDK
SystemInfo 11.2 ❌ No ✅ Yes ❌ No ✅ Yes, on Windows ❌ No
MBS( "SystemInfo.WindowsSystemInfo" { ; Native } )   More

Parameters

Parameter Description Example Flags
Native Pass 0 for current environment or 1 for native environment.
Default is 0.
If there is no emulation, both results are identical.
0 Optional

Result

Returns JSON or error.

Description

Queries system information on Windows.
By passing in no argument or 0, you get the current configuration for the running application. Pass 1 to get native architecture information for emulated applications.
The JSON object returned contains the following keys:

ProcessorArchitectureProcessor architecture as number.
ProcessorArchitectureTextProcessor architecture as text. Value is INTEL, ARM, IA64, AMD64, X86OnAMD64, ARM64, X86OnArm64 or Unknown.
Bits32-bit or 64-bit
PageSizeThe page size and the granularity of page protection and commitment.
ActiveProcessorMaskA mask representing the set of processors configured into the system. Bit 0 is processor 0; bit 31 is processor 31.
NumberOfProcessorsThe number of logical processors in the current group.
ProcessorTypeThe processor type as number.
ProcessorTypeTextThe processor type as text: Intel386, Intel486, IntelPentium, IA64 or X8664.
AllocationGranularityThe granularity at which virtual memory can be allocated.
ProcessorLevelThe architecture-dependent processor level.
ProcessorRevisionThe architecture-dependent processor revision.

See SystemInfo.MachoArchInfo function for similar information for macOS.
Seems like Intel on ARM 64-bit emulation lies and doesn't reveal the real native architecture. Use SystemInfo.WindowsMachineInfo to determinate whether you run on ARM in emulation.

Examples

Query in FileMaker in 64-bit on Intel 64-bit computer:

MBS( "SystemInfo.WindowsSystemInfo" )

Example result:
{ "ProcessorArchitecture": 9, "ProcessorArchitectureText": "AMD64", "Bits": 64, "PageSize": 4096, "ActiveProcessorMask": 3, "NumberOfProcessors": 2, "ProcessorType": 8664, "ProcessorTypeText": "X8664", "AllocationGranularity": 65536, "ProcessorLevel": 6, "ProcessorRevision": 40461 }

Query in FileMaker 18 in 32-bit on Intel 64-bit computer:

MBS( "SystemInfo.WindowsSystemInfo"; 0 )

Example result:
{ "ProcessorArchitecture": 0, "ProcessorArchitectureText": "INTEL", "Bits": 32, "PageSize": 4096, "ActiveProcessorMask": 3, "NumberOfProcessors": 2, "ProcessorType": 586, "ProcessorTypeText": "IntelPentium", "AllocationGranularity": 65536, "ProcessorLevel": 6, "ProcessorRevision": 40461 }

Query FileMaker on a Windows ARM notebook:

MBS( "SystemInfo.WindowsSystemInfo"; 0 )
// shows emulated Intel architecture.

Example result:
{ "ProcessorArchitecture": 9, "ProcessorArchitectureText": "AMD64", "Bits": 64, "PageSize": 4096, "ActiveProcessorMask": 3, "NumberOfProcessors": 2, "ProcessorType": 8664, "ProcessorTypeText": "X8664", "AllocationGranularity": 65536, "ProcessorLevel": 15, "ProcessorRevision": 1034 }

See also

Release notes

Blog Entries

This function is free to use.

Created 26th March 2021, last changed 28th January 2023


SystemInfo.WindowsMachineInfo - SystemInfo.isARM