There's no real difference between how NSH/Agent executes things versus
double-clicking on them.
There is a difference in the environment though. When you double-click on the executable, you must have logged in so your executing it using the environment
of your logged on user.
When you nexec the executable through the agent, the program will be launched
using the environment associated with the agent (which could be drastically
different then the logged on users' environment). Even though the agent
is impersonating a particular user (Administrator or whatever), the environment
is still the agent's environment.
During yesterday tests we detected these differences in environment variables so before nexecing the .exe we have set the environment variables just the same as those of administrator (the user we used to launch the .exe from windows command line) but the problem didn't disapper.