Converting Visual Basic (VB) to C# or to VB.NET -- Smart Client Applications

Applications written in VB6 are native to the Windows platform, but they are not designed (or suitable) for Internet deployment.  Many businesses look to PCA Consulting Services to help them convert legacy applications in VB to C# or to VB to VB.NET because Microsoft .NET provides a more powerful, maintainable and efficient solution for business-critical applications than does VB6.  In addition to native Internet access, converting from VB6 to C#.NET or VB.NET lowers maintenance costs due to substantial developer productivity improvements that Visual Basic .NET and Visual Studio .NET environment provide. Converting to C#.NET or VB.NET also will gain significant improvements in application performance.

Using a remote access layer (e.g. Terminal Services, GoToMyPC, Citrix, etc.) is a common work-around to Internet-enabling legacy VB applications.  Depending upon the number of end users and the complexity of the application, you may quickly discover the expenses associated with this work-around grow over time, and are measured in various forms: additional licensing fees, slow application performance, and limited concurrent user access.v>

C#.NET or VB.NET Smart Client Capabilities

The Microsoft .NET Smart Client Platform combines the best capabilities of Desktop Applications with the power and reach of the Internet — and offers a number of distinct advantages versus traditional VB applications or Browser-based applications.
Smart Client Desktop Application Experience

Microsoft Desktop Application Experience

.NET Smart Client applications look and perform just like standard Microsoft Office Applications. They are less expensive to develop, and overcome many of the well-known functional and usability deficiencies of Browser-based applications.  Converting VB6 applications to .NET Smart Client applications  provide a hi-fidelity end-user experience by taking full advantage of all that the Microsoft® Windows® platform and the Internet has to offer.
Smart Client Utilizes Local PC Resources

Utilizes Local PC Resources & Data

.NET Smart Client applications are installed on the End Users' PC, which allows the application to fully utilize the hardware and software resources available to that PC i.e. the local CPU, graphics processor, memory (RAM) and disk storage, and therefore require substantially fewer server resources.   A dual-CPU Server and Standard MS SQL Server 2008/2012 can easily support hundreds of concurrent end users.  Microsoft .NET Applications can also connect to local devices e.g. VOIP, bar-code and RFID readers, scanners, etc., as well as software resources available to that PC, including seemlessly exchanging data with MS Excel, MS Word and MS Outlook applications.
Smart Client 'Connected' to a Shared Database

Shared Database + Web Services

Our customized .NET Smart Clients connect to a centralized SQL Server database to store the data and control the functionality and business logic that drive the business application, with centralized application security. Our custom .NET Smart Client applications are always part of a distributed, networked solution.  Custom .NET Applications can connect directly with any data resources or web services available on the Internet e.g. Google Earth, D&B database.
Smart Client Centralized Security

Centralized Security in SQL Server

All PCA-designed Smart Client applications employ a role-based security model that provides Admin the ability to assign business roles and configure role-specific application- and data-level access privileges.  Application security privileges can be modified at any time, and all Users that are members of that Role will automatically inherit the new privileges.   Two-tier role-based security allows a SuperAdmin to enable Admin privileges, who in turn manage their own group's security privileges.
Smart Client Offline Capable

Off-line Capable Web Client

One of the key benefits of Smart Client applications is they can be used off-line, when a connection to the Internet is unavailable. When re-connected, Smart Clients automatically synchronize all off-line changes with the central SQL Server database, completely transparent to the End User. Smart Client applications work exceptionally well, connected or not. For traveling and field-based professionals, being able to work while disconnected is not a "nice to have," it is essential.
Smart Client Intelligent Installation and Updates

Intelligent Installation & Seemless Web Client Updates

The Smart Client installation and maintenance (update) process is completely automated. No I/T support required. Like a webpage, everyone automatically gets the latest version of the application with the most current set of data.  The PCA Smart Client "Mobilizer" automates application installation and updates, so deploying an application to 10 users or 10,000 users is the same: simple and straightforward.  PCA's Smart Client approach eliminates the traditional headaches and expenses associated with maintaining distributed business applications.
The process of migrating a VB application to .NET can vary considerably, depending upon the quality and completeness of the source VB application. For example, for a poorly-coded VB applicatios, or a VB application with lots of deprecated to 'dead code,' it is usually much more cost-efficient to build the replacement .NET application from scratch.  Without too much effort, our experienced engineering staff can determine to best approach to get the most out of the VB application investment and .NET migration project budget.