Danske Bank, Denmark
VB Migration Partner allows us to automate large parts of the conversion work, and, since the conversion is 1:1, the tool further offers the advantage of bringing all functionality to the new platform.
Michael Munk Lerskov, Project Manager, Danske Bank
SIS Datenverarbeitung GmbH, Austria
An initial migration compared migration tools from six vendors. It showed superior results for VB Migration Partner from Code Architects, which delivered fewer compilation and runtime errors than all its competitors. Its migration pragmas and the convert-test-fix methodology proved to be powerful and flexible enough to handle a large VB6 application (950K lines of code) with ease, the documentation is excellent, and Code Architects’ tech support has always been very responsive.
Dr. Otto J. Wiegele, CEO, SIS Datenverarbeitung GmbH
VB Migration Partner was able to correctly parse and convert all of the Forms and ActiveX controls to VB.NET. After analyzing the output and reviewing their on-line knowledge base (which is quite extensive), two pragmas were inserted to reduce the number of conversion errors to a handful in most of the programs. All of the forms could be edited without any further intervention. Grid controls that could not be converted were initially left as red rectangles. Within 2-days, all of the source code was cleaned up with no compiler errors. This meant that the existing presentation layer could be converted from VS6 to VS2008 – so the VB Migration Partner option works very well as part of an overall approach.
Give my experiences, I would recommend that companies take a serious look at VB Migration Partner.
MS Software Engineer – University of St. Thomas
Apogeo – Gruppo Zucchetti, Italy
VB Migration Partner has been a winning choice for migrating our VB6 application, that serves over 700 customers.
In a few months, they delivered an error-free version of our 500K lines of code application and we appreciated the VB Migration Partner efficient and skilled technical support.
Code Architects is a crucial partner to quickly adapt the product to new technologies.
Gianluca Zanella ,Technical Team Apogeo – Gruppo Zucchetti – Italy
Liberty Line, Italy
With a 10 year old software, used by more than 3,000 customers, it is essential to regularly update it and offer customers a competitive and useful product. With the inception of the new technologies and more advanced operating systems, we had to convert our VB application of more than 600,000 lines of code to .NET. We quickly realized that it was a very hard task, and it was only thanks to VB Migration Partner and its extremely efficient technical support that we were able to have a compliable and running application in less than a month. VB Migration Partner is the winning choice to expand your business to the new technologies.
Luca Frangioni, CEO Liberty Line
We have investigated the possibilities for a migration after a presentation of Code Architects at the Microsoft TechEd 2010 in Berlin. Before the presentation we assumed that migration would be too complicated en too expensive. After analyzing four different tools, we chose VB Migration Partner for the migration of our accounting and billing software (450K lines of code).
The big advantage of VB Migration Partner is that it solves the problems directly in the VB6-code by using “pragmas”. Therefore we don’t have to freeze our code and interrupt the new development in our software. With VB Migration Partner it’s also possible to migrate 1:1. This enables us to offer our customers the same user experience, but this time on a new platform. The final reason for us to choose VB Migration Partner is the (online) service and documentation. The tool and the website contain lots of background information and tips that will help you with the migration.
The only downside is that’s not possible yet to migrate to C#, but Code Architects has already announced that this language will be supported in a forthcoming release.
Ivo Huizinga, IT Manager SnelStart
I used VB Migration Partner to convert a small program (11K executable lines) that enables connections to multiple ODBC data sources in separate windows, allows entry and execution of SQL statements, and displays the results. It also allows for metadata export and import to local files. It compiled with no errors and ran with a single pragma to insert a single line of code. In comparison the Visual Studio Upgrade Wizard produced code with over 102 compilation errors. I was very impressed!
Fiona Oliver, Transoft
Facing a problem of Microsoft VB6 obsolescence, we spent weeks defining the best way to migrate our customer’s specific enterprise application from VB6 to VB.NET. We tried different COTS migration tools but the results were not the expected ones: too many things to complete manually after the conversion. The idea to develop a proprietary migration tool was in our mind when we finally found VB Migration Partner. It was the solution we needed. Indeed, with VB Migration Partner, we ended having to manually deal with only about 100 compilation problems compared to more than 10k given by other tools. Its iterative process with replayable corrections (thanks to “pragmas”) was a very useful functionality in order to reach a complete validation of the 150K lines of code application we had to migrate. During this process, we found and fixed a large number of execution problems in our application due to migration. A reactive technical support and the clear “knowledge base” on the website helped us to identify problem causes and to correct them. In only 2 months, we delivered a fully-tested and renewed .NET application to our customer.
Damien SEURU, Project Manager SOLENT
Dietrich’s AG, Germany
In today’s market you have to be able to deliver new application versions at any time. Customers don’t accept statements like: “Sorry, we are in a migration process. We can’t add the feature you need. We can’t even fix a bug within the next year.”
VB Migration Partner is the only tool which enables us to enhance the application during the migration process.
It was soon clear to us that the library approach is the way to go. VB6 and VB.NET are too different. It’s not possible for a machine to close this gap. Without VB Migration Partner we would have ended up implementing our own library. The “pragma” concept enables us to run the migration and as a result get .NET code we can compile. With pragmas migration is an ongoing process. We migrate, make changes on the generated code, express these changes in terms of “pragmas” and migrate again. During these migration cycles we are still able to change, enhance and deliver the old VB6 application. VB Migration Partner is a software which gives you the feeling the developers work with it themselves. They know the problems in migration processes and they offer solutions that work.
Conclusion: If you have unlimited time, money and manpower it might be worth having a closer look on the VS built in migration tool. If one of these resources is limited you choose VB Migration Partner.
Martin Gerhold, Dietrich’s AG – Germany
Some customers ask us whether it is possible to migrate to .NET without a support library. This customer found the answer by himself: the support library is the only reasonable mean to automatically deliver code that runs correctly. In fact, he says that without VB Migration Partner they would end up building their own library. Fortunately we at Code Architects have spent many man/years to extend and fine-tune our library, thus you can focus on less boring facets of the business.
Equally interesting is that this customer realized that only VB Migration Partner is able to convert VB6 apps that are being modified during the process: this is the methodology we know as “convert-test-fix”. All other conversion tool work on a snapshot of the VB6 codebase, and when the migration seems to be completed you suddenly realize that you still have to re-sync your migrated code with the new features and bug fixes that have been added to the original VB6 code in the meantime.
Not really smart, uh?…but this is how all other VB6 conversion tools work.
Jumar Solutions, UK
At Jumar we have a suite of VB6 applications and we need to migrate them to VB.NET in the quickest time possible as development is continuing alongside. We assessed several migration applications, and found Code Architects’ VB Migration Partner to be clearly the best on the market. We also found their support to be friendly and helpful.
Simon Barber, Jumar Solutions
National Systems Corporation, US
Thank you – your product worked better than we had hoped. It took less than two hours to configure your product and convert our application. Now all we have to do is make some minor font and display adjustments. Functionally our app works as it did before conversion.
Our original “level of effort required” estimates for a senior developer was 4 to 6 months. We now think we will complete the entire conversion in less than one month. The ROI is on the order of 10 to 1 or more.
Congratulations on having created a great product that anticipated our needs.
Sincere thanks to you and your team.
Jim Kargman, President National Systems Corporation
We are especially fond of this unsolicited comment from one of our customers. The original VB6 application consists of about 90,000 lines of code and contained no data access code or unsupported ActiveX controls. VB Migration Partner has converted VB6 apps with millions LOCs and tons of 3rd-party controls, thus this project could be considered as “relatively simple”, at least according to VB Migration Partner’s standards.
However, converting 90K LOCs and achieving a fully functional .NET project in less than two hours is a major achievement even for VB Migration Partner and surely sets a record that no other VB6-to-VB.NET converter can easily break!
In 1995 we realized a client/server application in VB3 using several third party controls, such as Crystal Report, Formula 1, and Crescent QuickPak. Over the years the software was greatly enhanced with new features and was ported to VB5 and then to VB6.
Two years ago our customer asked us to port the application to .NET, which in the meantime had reached the remarkable size of 800,000 lines of code. A manual rewriting was clearly too complex and expensive.
Almost accidentally we learned about VB Migration Partner, which was in non-public alpha release at the time, and it already looked quite promising for our purposes. We decided to invest some time in modernizing the VB6 code while waiting for the official release, which we adopted shortly after its official debut.
In these months we found the tool quite powerful and versatile, and surprisingly complete for a 1.0 release. More specifically, the included AxWrapperGen tool allowed us to create wrapper classes that guarantee the correct working of a few VB6 controls that aren’t directly supported under VB.NET. We estimate that this tool alone spared us several man months of hard work.
Finally, I’d like to thank Code Architects’ technical support team, who supported us through our endeavors, in a professional and efficient way. They and their software allowed us to complete the migration of our flagship application earlier than expected.
Marco Meneo, ProgeSoftware, Italy
800,000 lines of code is a *big* application to convert. Nevertheless, ProgeSoftware successfully completed the migration without any support from Code Architects other than the standard email support we offer to all our customers.
Unlike other conversion tools on the market, VB Migration Partner is so powerful and well documented that it requires no hiring external, expensive experts who show you how to prepare the VB6 code before the migration and how to manually fix all the issues that the tool left unresolved.
Elabora’s ProdWare is an ERP application that consists of dozens VB6 projects, dating back to 1994. Since then it has been continuously updated and extended, and it is still being improved with new features. In 2005 we attempted to convert it to VB.NET using Visual Studio’s Upgrade Wizard, but we abandoned the migration after about two years because we realized that the VB6 version was evolving too rapidly and the VB.NET version was doomed to be outdated and would lack many of the features that we added to the VB6 version in the meantime.
More recently we started a new migration project, this time using VB Migration Partner. Thanks to its convert-test-fix feature we managed to keep the VB6 and VB.NET versions always in sync. At this time we have converted the majority of all VB6 projects and we plan to complete the migration soon.
One of the major obstacles we found during the migration was the presence of Infragistics’ DataGrid 3.1 in virtually all forms. Code Architects’s support team helped us in authoring a .NET custom control (based on DevExpress’ XtraGrid) that implements all the properties, methods, and events that were used by ProdWare (among the many exposed by DataGrid) and that faithfully reproduces their behavior so that the resulting .NET code can be considered as functionally equivalent to the original VB6 code. By applying the right attribute to our control, VB Migration Partner was able to automatically replace all occurrences of the Infragistics’ grid with our control.
Dr. Italo Lunati, R&D dept, Elabora srl
Department of Environment and Conservation, Australia
I have recently been busy with converting two VB6 applications with around 60k lines of code into VB 2008 and I just finished with the first one (40k lines). It is now in the final test status and I am very happy with the outcome. I highly recommend the “VB Migration Partner conversion” tool that made that happen for us.
Published in the status update of the LinkedIn profile of Saeid Pahlevan
Department of Environment and Conservation
Linos Photonics, Germany
Visual Basic Migration Partner from Code Architects is the product that Microsoft should have supplied instead of that dreadful Upgrade Wizard! It is fast, efficient and informative.
However I’m going to say more about Code Architects technical support. In my experience this is second to none and is THE model of good support that others should aspire to.
Even questions that I now see are trivial, were answered quickly, clearly and courteously. There was no feeling of ‘we are the experts and you are an idiot’ that you find in some places.
The speed of reply is outstanding – normally replies come within two or three hours and often much quicker. The answers are answers to the questions that I actually asked – it is clear that the support team has taken care to understand to read my questions. The replies themselves are full, providing a clear course of action, and give reasons for that action and helpful background information and suggestions.
When dealing with some rather obscure aspect of the properties of a control, I came across a small problem in VBMP. I received a correction later on that same day. What more could you want?
In short, while using VBMP tech support I have never felt that I was going to be left dangling.
Geoff Adams, Linos Photonics
It Just Works Software Corporation, Canada
I have been using the trial version and have been very impressed with the results. The conversion results are superior to any tool we have tried and the pragma system is exactly what we need in order to continue improving the VB6 version while the migration to .NET is underway. I have been able to convert one of the smaller, but most technically challenging, modules in our application with just 3-4 hours spent each day over the course of three days. The competition’s product left us with ugly-looking code that would have taken a full week, at a minimum, and I won’t even mention the results of the free Visual Studio converter.
Jeff Irvine, It Just Works Software Corporation
Mazeppa AS, Norway
I must say at this point I am incredibly impressed with the software, tried other products and got a half baked application that ran in loops. With VB Migration Partner I had a running prototype the same day. This is the best spent money we have ever experienced. Thanks and good luck with the product.
Jeremy Pethick, Mazeppa AS
AB Engineering LLC, USA
I’d like to thank the VB Migration Team for your excellent work and support with our automation project. We had a very tight time-line to build our equipment and limited resources to do all the mechanical, electrical and software work required. The VB Migration Team allowed me to off-load the VB-to C# software migration work. I’d like to thank everyone on the team for all your help on this project. Everything is working well and the equipment is ready to ship on schedule. It’s been a real pleasure working with the VB Migration team. Your team was always available when I needed your help, I couldn’t have asked for better support. Thanks again!
Alex Brandorff, AB Engineering LLC
Engineering PLM Solutions, Italy
In 2002 I was very excited to see that Visual Basic had become a true OOP and modern language, even if that meant breaking the compatibility with VB6. Alas, the excitement faded away quickly when I tried the Upgrade Wizard included in Visual Studio .NET: even the simplest projects required hours of manual labor just to compile without errors. And once compiled they often didn’t work as they were supposed to do, especially if they made calls to Windows API.
I eagerly waited for each subsequent Visual Studio .NET release, hoping that Upgrade Wizard had evolved from a toy into a tool capable to convert real-world business apps. Each time it was a disappointed and we had to postpone the migration of our document management system (counting over 500,000 lines of VB6 code spread in many different projects).
Then I tried out VB Migration Partner… at last I had control on the migration process, thanks to pragmas, regular expressions, and a support library that ensures a very high degree of compatibility with the original behavior. As it often happens, the simplest ideas are the most effective ones!
In my opinion, the main VB Migration Partner strengths are its extreme flexibility and the excellent tech support. The Code Architects Team always solved all our doubts and problems, often in a matter of hours. Francesco Balena in person replied to the toughest queries about COM marshaling and object disposal. It was a pleasant surprise to find such a competent team and a company that is willing to extend their support to issues that aren’t strictly related to their product.
Stefano Baldi, Engineering PLM Solutions, Italy
Structural Concept, Canada
Structural Concepts Ltd. has been developing Virtual Bridges for over 10 years. The unique next generation bridge engineering software is being used on a number of notable projects and design competitions.
In order to take advantage of the increased available memory in MS Vista 64 as well as to take advantage of multi-core processors, the large VB6 software base is being migrated to MS Visual Studio.Net. It was important to proceed in an efficient manner while still being able to continue using and expanding the existing version of Virtual Bridges. While the architecture of the software was very well thought out, any thought of carrying out the migration process manually or with partial conversion tools would have been out of the question. Although proceeding step by step using COM Interopt was initially contemplated, it quickly became apparent that the process and debugging workflow would be too inefficient.
By some luck, I came across VB Migration Partner’s web site. Based on prior firsthand knowledge of Francesco Balena’s excellent VB text books, I was sold even before the product was released. Once it was released, I immediately purchased it and put it to good use.
It is absolutely clear that VBMP is an essential tool for the migration of any real project. Frankly, given the exemplary support from the lead developer and author of in my opinion the finest VB textbooks out there, I could only proceed with full confidence. Given that any issue that I raised was answered positively on a next day if not next hour basis also made a huge difference. It’s really as close to having VB Migration Partner’s support team work in my office as one could get!
Ara Ashikian, P.Eng.
President, Structural Concepts Ltd
Vancouver, BC – Canada
Actuarial Systems Corporation, USA
After 15 years of developing our application in VB3, VB4-16 bit and VB6, I was disappointed to discover that we could not move to VB.Net. Our application was too large to rewrite into the new syntax. In spite of edits made to follow the new rules, such as omitting the lower bound on Dim statements, the migration tool available ran for 5 hours and gave 1947 errors to fix; and that was just on our main application program.
Using VB Migration Partner, we converted that same code to .Net in 9 minutes and had 3 compilation errors to fix, all having to do with a third-party OCX. After commenting out those lines, the application started up and ran just fine, displaying dialogs that invoke our VB6 COM servers to perform calculations and print reports. Amazing! We need to keep developing our code in VB6 for our current clients, but the batch processing and code-test-fix methodology will allow us to convert a changing code base without making the same changes twice, once in VB6 and again in VB.Net.
ASC has been providing this application to businesses for over 25 years and we have successfully migrated from the mini-computer platform in the past. A rewrite would be impossible with an application such as ours that has evolved over so many years. Our client base has grown steadily during that time, and now includes 100’s of small to midsized firms with networks of 5 to 30 concurrent users of our application, and 20 of the top financial institutions in the nation, two of which have over 100 concurrent users of our application. With this tool, we will be able to support our existing platform and roll out a VB.Net version with minimal disruption to our clients.
Brian Olson, Actuarial Systems Corporation, USA
We knew our tool was more accurate than other tools on the market, but this experience is simply amazing: With just a few pragmas, they had a running .NET application in less than one hour!
Now, that means fast!
Jugo Arsovski, DevCity
I started Visual Basic 2005 Upgrade Wizard and after few steps I had converted .NET application. Oh my god! It was the worst converted code I’ve ever seen in my life. I ended up with zillion errors and warnings. It was practically useless code. I really had no idea where to start from. Almost every line in the project was underlined with red or green. I spent about 5 hours just trying to clean it up so I could understand some errors better. With that 5 hours I spent I only got about 1/1000 way through it so that should say how bad it was.[…]
I installed the VB Migration Partner on my computer and then ran the application. You wouldn’t believe that I was used to the GUI after only two or three minutes. It was love on first sight.
I have not spent a single minute on reading the help files. It is so simple to use that it is an absolute delight to work with. Actually all I had to do was to open VB6 project and then to click the “Convert to .NET” toolbar button (F5). Yes it was that simple. Only two steps and I had the VB6 application converted.
I ended up with only 65 errors and 17 warnings. I believe it’s worth mentioning that this is nontrivial project, involving thousands of executable lines, a lot of methods, classes, DLL’s etc. I am telling you this so you clearly understand that the initial 65 errors are relatively few, and seeing that was a real revelation to me. If I judge by the time it took to convert this application then this tool is certainly for all kind of migrations, beginning with the small and progressing to the huge ones (even those with millions executable lines). […]
All the errors were related to certain interface but, honestly, i didn’t know how to handle it. That’s why I contacted the VB Migration Support. I must say that I was pleasantly surprised by their efficiency and quick response. Actually this is very interesting part. To my great satisfaction I was privileged to communicate with Mr. Francesco Balena. […]
Isn’t it brilliant that the author also leads the tech support team? No doubt this gentleman knows very well, that support is so essential in overcoming the initial dismay for automatic conversion tools. He contacted me the next day after I sent him an email and answered a ton of questions including the most important one, how to fix the remaining 65 errors.
As you can guess I was able to fix all the errors in the next ten minutes after Francesco’s answer and finally compile the VB.NET project. Yep! It worked like a charm.
.NET consultant, DevCity contributor
Republic of Macedonia
Producing only 65 compile errors in a large project is a great accomplishment by itself, but the ability to eliminate most of these compilation errors with just one pragma tells even more about VB Migration Partner power.
In our opinion, however, the most interesting part of this story is the very last sentence: “It worked like a charm”.
It confirms that converted VB.NET apps often works fine at the first run after you eliminate the (relatively few) compilation errors. This is only one of the 17 advantages of VB Migration Partner’s support library.
Thanks, CodeArchitects! And a special thank to Francesco Balena for the job he did in developing this great VB6/.NET migration tool.
Few people in this industy believed that such a product could be implemented and could have been so effective, including Microsoft who never really invested in a migration tool. Our company invested a lot of time and money on VB6 products, and we left abandoned to our destiny when VB.NET was released, together with many VB6 developers. Code Architects managed to create such a tool, thanks to their determination, perseverance, and deep knowledge of both migration techniques and VB6/VB.NET inner workings. From now on, VB6 applications *can* be migrated, at last!
We have adopted VB Migration Partner since the beginning of the beta test program, and we stressed it on large complex projects (over 110,000 lines of code) that contain both custom and 3rd-party components, ADO, intensive Windows API usage, advanced graphics, sockets, even a script compiler. We always got great results and were able to migrate our projects by just adding a few migration directives (pragmas) to teach VB Migration Partner how to behave in a few special cases.
Software Development Manager
Prometeo was one of the our first beta testers. A central piece in their software architecture is a script compiler for a proprietary programming language, which allows both partner vendors and power users to customize every single aspect of the application. VB Migration Partner has been able to migrate the script compiler easily and quickly, which was quite remarkable.
Prometeo also managed to migrate their entire data layer (about 25,000 lines) into a VB.NET assembly in just a few hours. They then fix existing VB6 clients to reference the .NET assembly and everything worked fine at the first attempt. Just as interesting, in spite of the double jump through COM Interop – VB6 clients calling a .NET assembly that used ADODB objects – the migrated code was only marginally slower (about 6%) than the original one. Some profiling showed that the overhead was caused mainly by the many string concatenations inside the .NET component. It was easy to optimize that code by means of our StringBuilder6 class and a few SetType pragmas.
It is worth noticing that VB Migration Partner now performs code analysis and automatically lists which strings can be conveniently rendered as StringBuilder6 objects during the migration to VB.NET. To our best knowledge, no other VB migration software offers this feature.
Lorenzo Barbieri (LinkedIN profile) is perhaps the most active Italian blogger, writes on several magazines (including Italian edition of MSDN), speaks at international conferences, and is a very active MVP. The following text has been translated from a post on its Italian blog, a few days after Lorenzo joined Microsoft as a Developer Evangelist.
Lorenzo Barbieri, MVP
VB Migration Partner 1.0 has been released
Today version 1.0 of the tool Francesco Balena has been working on together with Code Architects Team has been released.
In past months I have tried a few beta releases, however – because of the recent job change – I didn’t manage to test it thoroughly enough to provide useful feedback. Nevertheless, all the tests I run it through were successful and all the projects I submitted to it were converted at the first attempt.
If you still have VB6 projects and want to convert them to VB.NET, I warmly recommend giving this tool a try.