Just some random thoughts for a different approach for running old ex4 unchanged on new terminal builds (eg if orignal source code is not available)...
Admittedly They might be more pain than biting the bullet and finding compliant Indicators etc...
1. Use Junctions and Symlinks etc to expose the data folder in the old location.
2. Someone Build a local version of shell32.dll which serves as a wrapper exposing the real ShellExecuteW as a fake ShellExecuteA? Must be careful with windows runtime search path etc.
( or for really brave use a binary editor on the ex4 to change the functions from *A to *W :) )
3. Not sure about hst files. - probably not possible to do this transparently and simply
I like your thinking!
2 shouldn't be necessary because the old EX4 files should continue to use the A functions.
I can think of a way of doing 3 which would make it transparent to the user, but the amount of work is ludicrous and, apparently, the backward-compatibility issues with hst files have got fixed.
1 should work, but is only really viable for developers - who can probably fix their code easily - rather than any external users they have.