Visual J# 2.0 Redistributable – Second Edition: Leveraging Existing 32-bit Visual J# Code

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

Recommendation(s)

JavaCOM

Use .NET COM interop instead of COM interop.

J/Direct

Use .NET PInvoke instead of making native calls.

J++ delegates

Use .NET delegate to author delegates.

WFC

Use Windows Forms to write controls.