>>I am looking for a good 'generic' method of Pathing.
In my case, I have to point to a separate set of data when developing and to the production data when in production. So, I suppose this is what you are looking for either and here's a little something.
When you build your form, just say ThisForm.DataEnvironment.AutoOpenTables=.F. and in the ThisForm.Load() method of BaseForm, you will fix the path of every table in the DataEnvironment and then you will issue, at the end of the load, ThisForm.DataEnvironment.OpenTables().
To know which path to use, we are reading the INI file that is in the same directory as the EXE. Since we have two directory, which mean two EXE and two INI, one INI can then point to a different path.