Important: |
---|
This is retired content. This content is outdated and is no longer being maintained. It is provided as a courtesy for individuals who are still using these technologies. This content may contain URLs that were valid when originally published, but now link to sites or pages that no longer exist. |
The CeQueryInstructionSetfunction queries a remote Windows ®phone to determine whether it supports the specified processor-specific instruction set.
Syntax
BOOL CeQueryInstructionSet( DWORD dwInstructionSet, LPDWORD lpdwCurrentInstructionSet ); |
Parameters
- dwInstructionSet
-
[in] The instruction set that will be queried to determine if it is supported by the currently running OS. Setting this parameter to PROCESSOR_QUERY_INSTRUCTION causes the device's current instruction set to be returned in the lpdwCurrentInstructionSetparameter. The following table shows the accepted values for this parameter.
Value Description Floating point hardware Floating point emulation PROCESSOR_ARM_V4_INSTRUCTION
ARM V4 instruction set.
No
Yes
PROCESSOR_ARM_V4FP_INSTRUCTION
ARM V4 instruction set.
Yes
No
PROCESSOR_ARM_V4I_INSTRUCTION
ARM V4 with Thumb instruction set.
No
Yes
PROCESSOR_ARM_V4IFP_INSTRUCTION
ARM V4 with Thumb instruction set.
Yes
No
PROCESSOR_ARM_V4T_INSTRUCTION
ARM V4 with Thumb instruction set.
No
Yes
PROCESSOR_ARM_V4TFP_INSTRUCTION
ARM V4 with Thumb instruction set.
Yes
No
PROCESSOR_QUERY_INSTRUCTION
Request to have the current instruction set reported to the caller.
No
No
- lpdwCurrentInstructionSet
-
[out] Returns the current instruction set supported by the OS.
Return Value
Returns nonzero if the instruction set passed in through dwInstructionSetis supported by the current OS. Otherwise, returns zero.
Returns nonzero if dwInstructionSetis set to PROCESSOR_QUERY_INSTRUCTION. The lpdwCurrentInstructionSetparameter is then set to the current instruction set supported.
Returns zero if the dwInstructionSetvalue is unknown.
Remarks
This function can be used by any application that needs to determine if the code about to install or run will work on the current OS. The OS knows explicitly what instruction it will execute, and therefore will inform you if your installation should continue.
The following table shows the instruction set compatibility.
Note: |
---|
Windows Mobile only supports processors based on the ARM architecture. |
OS instructions set | Supported instruction sets |
---|---|
PROCESSOR_ARM_V4_INSTRUCTION |
PROCESSOR_ARM_V4_INSTRUCTION |
PROCESSOR_ARM_V4FP_INSTRUCTION |
PROCESSOR_ARM_V4FP_INSTRUCTION PROCESSOR_ARM_V4_INSTRUCTION |
PROCESSOR_ARM_V4I_INSTRUCTION |
PROCESSOR_ARM_V4I_INSTRUCTION PROCESSOR_ARM_V4T_INSTRUCTION |
PROCESSOR_ARM_V4IFP_INSTRUCTION |
PROCESSOR_ARM_V4IFP_INSTRUCTION PROCESSOR_ARM_V4TFP_INSTRUCTION PROCESSOR_ARM_V4I_INSTRUCTION PROCESSOR_ARM_V4T_INSTRUCTION |
PROCESSOR_ARM_V4T_INSTRUCTION |
PROCESSOR_ ARM_V4I_INSTRUCTION PROCESSOR_ARM_V4T_INSTRUCTION |
PROCESSOR_ARM_V4TFP_INSTRUCTION |
PROCESSOR_ARM_V4TFP_INSTRUCTION PROCESSOR_ARM_V4IFP_INSTRUCTION PROCESSOR_ARM_V4I_INSTRUCTION PROCESSOR_ARM_V4T_INSTRUCTION |
CeQueryInstructionSetwill fail on mobile devices running a version of Windows Mobile that is earlier than Windows Mobile Version 5.0. In this case, CeQueryInstructionSetreturns zero, and CeRapiGetError (RAPI)returns HRESULT_FROM_WIN32( ERROR_NOT_SUPPORTED).
Requirements
Header | rapi.h |
Library | rapi.lib |
Windows Embedded CE | Windows Embedded CE 6.0 and later |
Windows Mobile | Windows Mobile Version 5.0 and later |