I wouldn't have have the hassle of creating a new path string to include the name of the file, for every new file I want to create.
You can do
oldcd = CurrentDir(lock);
fhandle = Open(filename,MODE_xy);
CurrentDir (oldcd);
in order to open a file relatively to a lock.
BTW, the reason a lock on a directory is usefull to me is that the code I've already written allows for global default directories to be defined for various types of stuff.
Did you read all the requirements of the FINDOUTPUT packet ?
For example if your global directory points to Work:Files but the user entered an absolute path like Sys:Prefs into the settings window, you have to make sure that the lock for FINDOUTPUT points to Sys: instead of Work:Files. You cannot just use the global lock.
Bye,
Thomas