Ok, the good news is that this just works with the standard tools!
I tried makescut.exe, shortcut.exe and hand crafting .url links without success.
So I then thought I'd have a go at a .lnk file with a binary editor.
While browsing the ".lnk" file format information, I noticed that the file has a "relative path" already defined, which I guess it uses to find the target.
Anyhoo, I created a directory "C:\TEMP\PORT" with subdirs "BIN" and "SCRIPTS". I then created a shortcut with the target
Code:
C:\Temp\port\bin\kix32.exe scripts\myscript.kix
Editing the link file I saw that threlative path was set to ".\bin\kix32.exe" - interesting...
I moved the directory structure and the link continued to work - it automatically updated the absolute path to match the new details.
The only trick is to make sure that you specify a relative path for the script.