Gizmox > Resources > White Papers

White Papers

December 23, 2008 :: 4572 Views :: Download PDF: Download PDF

This is the third article in a series of articles that describes the various migration options of desktop/smart client applications to the web available using Visual WebGui's migration tool.

In order to discuss the migration process of legacy desktop applications to the web, we should first establish that there are 3 different types of desktop applications:

  1. WinForms based desktop application (C#/VB.NET). The UI layer is coded using .NET languages – the business can be .NET, COM+ or any other interop.
  2. VB6 based applications. The UI layer is coded with VB 6.0.
  3. Smart client or other desktop technologies (C++ MFC/ATL, Delphi, Java etc). Any other smart client technology based applications.

This document describes the migration process of smart client and other desktop technologies to the web using Visual WebGui's Rich Internet Applications Platform migration tool.

Migration of smart client and other desktop technologies

Background
Migration of any other desktop technology such as C++ MFC, Delphi or Java Smart Client is quite complicated to accomplish with existing tools and without Visual WebGui.

Visual WebGui provides the shortest path for such migration needs since it maintains the entire desktop concepts including development patterns, design patterns such as MVC and other desktop UI oriented directions.

The Process
Desktop applications can be transferred to web using Visual WebGui in 2 different approaches:

  1. Source technology → Visual WebGui UI using DL/BL interop to Source Technology
    The application will keep using the existing BL/DL layers as introp to C++ dlls, Delphi COM Exposed API (Technical Article)  or a .NET to Java bridge (Starting Point Article)  and only the UI is mimicked within a Visual WebGui project using the productive proven tools of WinForms.
  2. Source technology → Visual WebGui Project
    The entire application is mimicked within a Visual WebGui project and .NET using the productive proven tools of WinForms.
    Gizmox has performed such experiment of migration; the “WebMail Project” is a web copy of the desktop version of Outlook 2007 (read more on WebMail project…).

Considerations & Exceptions
Except for the considerations and exceptions mentioned in the first section “WinForms based desktop applications”, there are two additional subjects derived from the VB history of the project:

  • The source desktop project coded on the source technology might use non-Thread-Safe win32 or native language API resources – those should be handled as potentially dangerous to the multi user web environment.
  • Threading Model: Note that when interoperating or bridging components coded in a different technology there might be a difference in threading model; Consider using the “STAThread” attribute decoration above any method that is accessing VB 6.0 based COM/COM+.

Summary
Migration of smart client or other desktop technologies application to the web using Visual WebGui migration tool has the following advantages:

  • The application can keep using the existing BL/DL services – no write or re-engineering is required.
  • UI concepts, design patterns and practices can be migrated as is.
  • Smart Client UI elements, API and behaviors are covered by the WinForms out-of-the-box so that migration of the UI to Visual WebGui is quite native.
  • The effort you have to make in order to accomplish a fully functional web application is measurable.

Application migration – part 1 – .NET Windows Forms to ASP.NET Web
Application migration – part 2 – VB6 to Web

Learn about Visual WebGui Migration solutions >

Download PDF Download PDF