I don't see what's so wrong with necros, but the easiest solution would be to simply have an "archived" mode if the mod/admins really don't like them. I don't know how the vb sql table looks like but I'd imagine locked thread is a 0 or 1 in it's own field. If it's 0 it's not locked, if it's 1 it's locked. So add 2 for archived. Would show that it's locked and function like it's locked, but would also have a message that says archived. Perhaps the "locked" button could also say "archived". This is something that would probably take a few hours to code and test. I did it to one of my forums (which is now dead) but you can see an example here:
I forget what I set for the time interval but basically when a thread was last replied to longer than it, it just goes into archived mode.
Though personally I don't really see the big deal with necros, just offering an easy solution.