The problem with this is that it returns True for "VB6.exe".
Why? Because the app "VB6.exe" may be in your directory, but in fact you just messed up something.

Now pass this assumingly existing "path" on to an ActiveX exe, assuming the file really exists and BAMM.
Your ActiveX might be in a different path than your exe, and finally you notice that the function betrayed you.

Praising a function's speed without applying error checks to compensate for such problems is not fair.