Start a conversation

Resolving Architecture Mismatch Issues with Pivotal.WindowsFormControls

Overview

The customer encountered a warning mismatch when compiling projects against the Pivotal.WindowsFormControls assembly in version 6.6.5, which is built under x86 architecture, while version 6.6.4 was built under Any CPU. This discrepancy can cause runtime errors when using the 64-bit Pivotal Smart Client. The issue was confirmed as an architecture change, and Any CPU builds were provided for version 6.6.5. Customers are advised to ensure all assemblies target a consistent .NET framework version to prevent binding conflicts.

Information

Error Message: "There was a mismatch between the processor architecture of the project being built 'MSIL' and the processor architecture of the reference 'Pivotal.WindowsFormControls … 'x86'"

Cause: The Pivotal.WindowsFormControls assembly in version 6.6.5 is built for x86 architecture, while the previous version 6.6.4 was built for Any CPU. This change can cause runtime errors when using a 64-bit environment.

Resolution Steps:

  1. Verify Assembly Architecture:
    • Check the architecture of the Pivotal.WindowsFormControls assembly in your installation.
    • Use tools like CorFlags or Dependency Walker to confirm the architecture.
  2. Use Any CPU Builds:
    • Obtain the Any CPU builds for version 6.6.5 from the provided repository or support.
    • Replace the x86 assemblies with Any CPU versions in your project.
  3. Ensure Consistent .NET Framework Targeting:
    • Validate that all assemblies within your solution target a consistent .NET framework version, ideally .NET 4.8.
    • Rebuild any assemblies targeting older frameworks to align with .NET 4.8.
  4. Verify Resolution:
    • Compile your projects again and check for any warnings or errors.
    • Test the application in your 64-bit environment to ensure no runtime errors occur.

Important: Mixing different target frameworks or architectures can lead to binding conflicts and runtime errors. Ensure all components are aligned to prevent such issues.

Frequently Asked Questions

How do I know if this architecture mismatch applies to my situation?
You'll see a warning message about a processor architecture mismatch when compiling projects that reference the Pivotal.WindowsFormControls assembly in version 6.6.5.
What should I do if I encounter binding conflicts with System.Xml?
Ensure all assemblies target a consistent .NET framework version, ideally .NET 4.8, to prevent binding conflicts. Rebuild any assemblies targeting older frameworks.
Can I use x86 assemblies in a 64-bit environment?
No, using x86 assemblies in a 64-bit environment can cause runtime errors. Ensure all assemblies match the architecture of your environment.
What if the Any CPU builds do not resolve the issue?
If issues persist, verify that all assemblies are correctly targeting the desired architecture and .NET framework version. Contact support for further assistance if needed.
Choose files or drag and drop files
Was this article helpful?
Yes
No
  1. Priyanka Bhotika

  2. Posted

Comments