One of the challenges with ASP classic is that the Source code may contain bugs and ambiguities that go un-noticed.
This is a problem with both ASP and VB6 but it is more common in ASP because the ASP classic processor is not a true compiler. The only ASP code that is ever formally checked by the ASP processor is the code that is actually executed by real world actual page requests. You ASP can have functions that are completely invalid and if they are not called, you would never know about it. When we are translating a site, all the code on all the specified pages and their includes is compiled. It is not uncommon for hidden problems in the code to show upbe reported by gmBasic. The tool does its best to interpret what it sees, but if there are problems in the source they will often produce problems with the .NET.
Sometimes there are things we can do with the translator to accept bad or unconventional code, other time we have to use the pre-editor, and in the worst cases we have to hand fix files.
It is also very common for an ASP site to contain files that were never finished, or have not been maintained and are no longer consistent with the rest of the site also have problems generating a clean correct translation and they should be brought to the attention of the customer to ask if they are still an active part of the site. In active pages . In many cases these are pages are no longer active and should be omitted from the translation project. IN In this way, the upgrade project is a good opportunity to clean up the site by removing the inactive content.
Tip | ||
---|---|---|
| ||
gmBasic has a programmable pre-processor that allows migration teams to modify the source code in memory before it is processed for translation. Conceptually speaking it is a search and replace facility. In its simplest form, the pre-processor is invoked by the Compile/Fix or Refactor/EditFIle commands. If you are changing your source solely to prepare it for migration, it is a best practice to use the pre-process command rather than doing them directly by hand. Using the pre-processor documents the changes, applies them systematically, and makes them repeatable and trackable. This is particularly important if the source code is under active maintenance outside of the migration effort. |