>>1) there is absolutely nothing wrong with running a SELECT against the vcx to see if a class exists.
>
>The only thing I'd say is that it relies on the internal structure of the .vcx. Granted, this isn't _likely_ to change, but...
I'd bet the Class field will be there for indefinite time, and Properties and Methods too. Wouldn't be sure of any fields in the lower half of the structure. Take the structure of .frx and .scx files, they're around for seven years now. See which kind of thing changes, and which doesn't.