I do not understand (yet) what is happening, but I have sorted out the original problem.

I've removed any mention of expsrv.dll from SB8 Install script. And deleted the Registry entry for PendingFileRenameOperations.
Then install again. This puts expsrv.dll back into the Pending... in the registry.
Also vbajet32.dll which is dependent on expsrv.dll.
Neither of these is mentioned in the install script so I do not know why they get put into the Registry as tmp files waiting to be renamed; every time I run the install.

Not a SB problem, but if you have any thoughts I'll be interested.

Thanks for the assistance and useful comments in this thread.