Skip to content

Use winVersion.getWinVer().processorArchitecture whenever possible #14534

@josephsl

Description

@josephsl

Is your feature request related to a problem? Please describe.

With #14439, it is possible to obtain processor architecture for the Windows instalaltion. This can replace os.environ["PROCESSOR_ARCHITEW6432"] in most situations. Currently environmetn variable is read in app module (is64BitProcess), COM registration fixing tool, and NVDA Helper library initialization.

Describe the solution you'd like

Use processor architecture string whenever possible. The only exception is update check where due to service pack string, sys.getwindowsversion() must be employed until NVDA moves to supporting Windows 8/10 and later. Or, provided that Windows 7 SP1 reports service pack minor version of 0 all the time, then winVersion.getWinVer() can be used in update check (note that on 32-bit systems, architecture string to be sent to NV Access server is empty).

Describe alternatives you've considered

Leave things as is.

Additional context

Checking for 64-bit Windows can be done by either:

  • winVersion.getWinVer().processorArchitecture in ("AMD64", "ARM64")
  • winVersion.getWinVer().processorArchitecture.endswith("64")

Metadata

Metadata

Assignees

No one assigned

    Labels

    Addon/APIChanges to NVDA's API for addons to support addon development.audience/nvda-devPR or issue is relevant to NVDA / Add-on developersp5https://github.com/nvaccess/nvda/blob/master/projectDocs/issues/triage.md#prioritytriagedHas been triaged, issue is waiting for implementation.

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions