Unless my code is up the creek, I've discovered a bug in the finally code when used in an exe. Open the attached project and create an exe file from it. Move this somewhere else and then run the resulting exe. Am I wrong in thinking that the console window SHOULD show the fact that test2 has run the finally each time it's called, or .....
(Note that if you run test1 as is, you'll see that the finally code is run in test2 each time as expected)
The problem that I can see is that if I run test1 above as a normal script, I run through the finally in test2. As soon as I create an exe of it and run THAT, the finally is never run.