Microsoft does the Ex and 2 renaming a lot. One problem is that a developer
may not even be aware that the new interface exists and still go on creating
code that uses the old one. If the goal is to migrate source code to the new
interface why not do the rename and via compiler errors force the old source
code to add Obsolete in order to continue using the old interface. Binary
code wouldn't even know about the new interface since it has a different
IID. You might even be able to generate a custom compiler error that
explains what to do if an old method signature is used.

Doing this provides a forced source migration that at some point that will
allow the deletion of the Obsolete interface. Unlike the Microsoft case
where they accumulate everything without ever deleting anything. With the MS
case there is no incentive to clean up your code.

Can you just rename the static nsServiceManager  to nsServiceManagerObsolete
and build a new one?

--
Jon Smirl
[EMAIL PROTECTED]





Reply via email to