I use LBC portable from a stick.
Starting programs with %APPDRIVE% from that stick works fine.
However, passing arguments isn't possible using %APPDRIVE%.
I finally remembered the conventions for relativ paths using .\subpath - it is working now!
Since this knowledge is not so common, and I lost quite some time trying to use %APPDRIVE%,
I suggest to help users with this topic by adding some sentences to the help and
show some hints ("argument not valid, ..."), instead of just starting the program without the argument/with an invalid argument,
or (better) by accepting and "translating" the environmental variables also in the arguments.