Sometimes it is necessary to force the background garbage collector to finish up all its tasks so a file recently used can be moved or deleted:
//First force the garbage collector to finish up so the file is released from its last access
GC::Collect();
GC::WaitForPendingFinalizers();
Feel free to comment if you can add help to this page or point out issues and solutions you have found. I do not provide support on this site, if you need help with a problem head over to stack overflow.