Martin,
>Complex applications don't get migrated overnight. Any project manager with a slight idea of what she is doing will prepare an evolutive path. Whenever you want to switch platform in a huge application, you first prepare a clear interoperability strategy, and then you start doing an incremental shift.
Very good points. In many cases, the first step is finding a way to move the data to SQL Server or another database, perhaps using the Express version. Then perhaps in the redesign to do that, you also wrap up some program logic into objects that talk to the data and can be exposed as COM objects in addition to "normal" VFP classes. Those COM objects can return the data optionally as XML or simple objects that represent a record of data. At that point, you are ready to start consuming that data in backend database or those COM objects from other forms developed in a new platform. Other strategies can involve calling VFP forms from .NET or .NET forms from VFP as parts of the app are moved incrementally.
Or, you can avoid the move to SQL Server right away and still talk to VFP tables, but make the step of wrapping logic in objects to be consumed from elsewhere.
Either way, you are dealing with a path of evolution as you stated above. Very sound advice.