In reply to Peter Lancashire.

Have you tried to run the following:
PROC PRODUCT_STATUS;
RUN;
I believe it gives version of the products in the log, so maybe this could be read.
I think there is also an option on this proc called MAKE_MACROS but I can't see an easy way to relate the macro name SYSPRODSTAT3 to a product name.