>>I don't see much of a point in considering a performance hit. Whatever you call with shellexecute() will surely last at least one order of magnitude longer than the registration of the call. Not that anyone calls this in a tight loop. And then, even if someone would, well, declare just before the loop.
For Dmitry, this technique absolutely solves his issue and (depending where he puts the VFP function) probably means he never needs to even think about it again. While you're probably correct about performance for this example: if adopted as a standard it also avoids future nuisance from performance hits in other use cases. Similar to consistent use of mdot even in code where it might not affect performance (ducks for cover)
"... They ne'er cared for us
yet: suffer us to famish, and their store-houses
crammed with grain; make edicts for usury, to
support usurers; repeal daily any wholesome act
established against the rich, and provide more
piercing statutes daily, to chain up and restrain
the poor. If the wars eat us not up, they will; and
there's all the love they bear us."
-- Shakespeare: Coriolanus, Act 1, scene 1