I would assume that if USS Names are programmable, then NCC-Registries should be as well.
Perhaps they (registries) could be in chronological order (read a good post on this somewhere IIRC (aha its on trekmania, what a coincidence

)
http://www.trekmania.net/the_fleet/utop ... system.htm ) with lower ones reserved for early ships, and as the ships advance the registries are randomly picked from their selective time period. This way, you might have the USS Tangerine NCC-23200 in one game, and then in another game you would have the USS Tangerine NCC-25020. This way it could be unique while still keeping its roots in the Star Trek Universe.
For important ships (USS Enterprise, USS Voyager etc) would require name and registry to be linked (USS Enterprise could follow some sort of registry lineage line as well, 1701-A, 1701-B for specific class of ship only, Connie refit, Excelsior refit, etc...)
For experimental vessels (first of their class, USS Akira) an NX-Registry could be randomly used, but for ones we know of already, such as the USS Prometheus NX-59650, would be automatically linked.
Now, in the event you try to specify a starship registry that is already in use, or one that is in the 'canon ship registries' database, the game pops up a window explaining that you cant do this, and will make you change the registry manually, or it will select one automatically from the ship's time period. If you have the ship, USS Enterprise 1701-E (or any important ship), destroyed in battle, you DO have the option of renaming a Sovereign class ship to USS Enterprise NCC-1701-E a maximum of ONE time, after it is lost the second time, your Sol (pun intended?)

Also, for non-Federation ships (Rom etc) names and registries can be completely random, as we dont know how they number their ships in canon.

On a side note, it would be epic to have a Fleet Summary Screen outlining all your current ships that are in active duty, have been lost due to random events (good for Ocampa array, wormhole, or Q), have been destroyed, or are currently under construction, being refitted, have been refitted, have been decommissioned, and various other service history. See link below for how this could be set up:
http://i32.tinypic.com/egsjg2.jpghttp://i30.tinypic.com/20ztb1h.jpgThese are my thoughts, take them for what they are worth (which is not alot actually

)
EDIT: Updated