So if your file depends on other files and DLLs, all of those need to also be linked. Symlinks on Windows fall down at file dependencies.
These are the benefits of creating a shim:
This also allows applications and tools to be on the 'PATH' without cluttering up the PATH environment variable. We like to call this 'batch redirection that works'. It can also work to simply call the actual binary when it shims GUI applications. It's a form of redirection, where you create a 'shim' that redirects input to the actual binary process and shares the output. Shimming is like symlinking, but it works much better.
Executable shimming (like symlinks but better).
Executable shimming (like symlinks but better)