Looking into this more I moved my Windows "temp" folder to my "C" drive.
Now when I close the assembly the virtual part disapears from the "Temp" folder but when I reopen the assembly, the virtual part reapears in the "Temp" folder and the assembly opens with no errors.... So It was the "Temp" file on a RAM drive that was causing the problem.
Well I just have had the same problem, but it's with an older assembly, and now several virtual assemblies within are AWOL.
I looked through the forums, and see this problem dates back to 2007, and has had several SPRs raised for it,some of which are marked as resolved, which it patently is not.
I don't use a RAM drive, so that's not the issue.
Not sure how to proceed here, I guess I'll have to hope my backup included my temp files.