The 64-bit editions (x64 and IA64) of Microsoft Visual J# 2.0 Redistributable Package – Second Edition enable users to take full advantage of the 64-bit .NET Framework (v2.0 and v3.0) and the underlying 64-bit hardware platform without having to deal with differences between the 32-bit and 64-bit hardware platforms. To know more about the differences on the two platforms see the whitepaper here.
In most cases, Visual J# applications that were developed by using previous versions of Visual J# Redistributable targeting the 32-bit platform can be recompiled by using the Visual J# compiler that ships with Microsoft Visual J# 2.0 Redistributable Package – Second Edition and can be executed as 64-bit native applications without source code modifications. However, 32-bit Visual J# applications that have dependencies on floating-points, native code (for example, DLLs or COM InProc Servers) or the feature set that is not supported may require modifications when porting to 64-bit platforms.
To use the existing 32-bit code on the 64-bit platform, the application must be recompiled on a computer with the Microsoft Visual J# 2.0 Redistributable Package – Second Edition compiler by using the ‘/platform’ compiler switch.
Though it would be great to never know about the differences of the underlying platforms, a few scenarios which developers must address are available in the whitepaper here. Following are a few more feature areas supported by Visual J# for which a source code change would be needed to execute the applications natively on 64-bit platforms:
32-bit vs. 64-bit Platform Difference
Use .NET COM interop instead of COM interop.
Use .NET PInvoke instead of making native calls.
Use .NET delegate to author delegates.
Use Windows Forms to write controls.