Deactivate method's default exception

I'm working in C#. In the TurboActivate.cs file, I was looking at the Deactivate method and found that there is a "catch-all" failed deactivation case, where the following exception is thrown:

throw new TurboActivateException("Failed to deactivate.");

Under what circumstances would this happen? I am trying to set up appropriate error messages to the user, and I would prefer to be able to give the user more information for this error if it comes up.

Typically that would only happen if you're using an old version of TurboActivate.cs with a new version of the TurboActivate.dll. Meaning we throw new errors but your old version of TurboActivate.cs doesn't know about the new errors because it's old.

So, for example, in the next version of TurboActivate we have added the ability to limit of prevent deactivations on the server side. If you prevent deactivations on the server side, and the customer is running a version of your app either with an old TurboActivate.cs alone or both an old TurboActivate.cs and TurboActivate.dll, then instead of getting the new error telling them they can't deactivate because it has been limited, they'll just get the generic error message.

Does that make sense?

So, every new version of TurboActivate make sure you upgrade both the TurboActivate.dll and TurboActivate.cs (and TurboActivate.exe if you're using that)

Ok, makes sense. Thanks.