Another way it could be done (I'd been thinking of doing it for my PortableApps.com applications, especially Inkscape incidentally) is by just analysing the command line, and seeing if it's a file which exists. If it is, use the shlwapi.dll PathCombine DLL call (there may be a better way of doing it, but I doubt it). I believe that PathCombine will work even if it's an absolute path, but if not you'd need to do something like, does it start with \\ or is the second character : or something like that.
That'd be simpler than changing all the resource request lines.
Another way it could be done (I'd been thinking of doing it for my PortableApps.com applications, especially Inkscape incidentally) is by just analysing the command line, and seeing if it's a file which exists. If it is, use the shlwapi.dll PathCombine DLL call (there may be a better way of doing it, but I doubt it). I believe that PathCombine will work even if it's an absolute path, but if not you'd need to do something like, does it start with \\ or is the second character : or something like that.
That'd be simpler than changing all the resource request lines.