OK, I think I've bottomed the problem, but don't know if there is a solution.
The cookie is not being deleted, but the UID in the cookie is sometimes different from the tblAuthor User_code, which causes the board to assume I'm not logged in.
I think this is related to logging into the forum from two different PC's (work and home) as it seems to create a new User_code every time you sign in.
Apart from the obvious one of changing the code so the User_code is static (not sure why it has to change anyway?), is there another way to get round this?
Thanks for the help so far.