You can potentially work around this sort of issue by building the layout to be shared in one file, then putting all your scripting and fields to update it in that file. Then, call those scripts from the other files, passing script parameters or updating global fields as needed. You can open a window using that file, then close it when you're done.
Conceptually, at least, that allows you to "share" a layout between different solutions ... but you have to be careful about making sure all your fields are globals to avoid record lock issues in a multi-user environment.
That's a good idea, Mike. For my progress bars that I use right now they are already globals so locking wouldn't be a problem in our environment. I'll give it a shot and let you know how it goes. Thanks!