Much more information is needed:
1. Version numbers.2. Code used.3. Exact parameters failing.4. Exact error code returned.
Hi,
One of our users was getting a "Failed to open file" error when loading our plugin in a DAW (Reason from Propellerheads) and we managed to trace it down to the TA_IsGenuineEx method. Right there, the message is shown and the loading is aborted.
I am using latest version of TurboActivate static libs (MT), and the user is in a Window 10 64 bits environment. 64 bits DAW as well.
Could you please give any information about what could be wrong and any idea on how to fix that?
Thanks.
Mariano
Much more information is needed:
1. Version numbers.2. Code used.3. Exact parameters failing.4. Exact error code returned.
1) version numbers: as I said, it's the latest static libs you have on your site today. It's not very clear where the version number is.
2) here is the code that fails:
GENUINE_OPTIONS opts = {0}; opts.nLength = sizeof(GENUINE_OPTIONS); // How often to verify with the LimeLM servers (90 days) opts.nDaysBetweenChecks = 60; // The grace period if TurboActivate couldn't connect to the servers. // after the grace period is over TA_IsGenuineEx() will return TA_FAIL instead of // TA_E_INET or TA_E_INET_DELAYED opts.nGraceDaysOnInetErr = 14; // In this example we won't show an error if the activation // was done offline by passing the TA_SKIP_OFFLINE flag opts.flags = TA_SKIP_OFFLINE;
HRESULT hr = TA_IsGenuineEx(taHandle, &opts);
3) need your help on that
4) the function does not return. It just aborts with that error message.
The TurboActivate library does not show errors of any kind. If you're getting a return code, you need to tell us what the return code is. Or, better yet, look up the return code in TurboActivate.h and present an accurate message to the customer.
>> "2) here is the code that fails:"
... where exactly is it failing? And how? And how are you handling the hr? *That's* the code that is needed.
I wish I could, but I am not able to reproduce the problem on my computer. It's on a user computer, so my only option is to send him updates of the software with some alerts after every instruction to be able to locate where the problem happens. This is how we were able to identify the error message was shown on the TA_ISGenuineEx function. The problem is that no further alert is shown after that, so it looks like the plugin is crashing at that point and not even returning any error code.
To make the problem more difficult to manage, this is happening within an audio plugin that is loaded inside a DAW (Reason).
One interesting point is that when the user deactivates the plugin, the DAW can load the plugin normally, but obviously I'm restricting its use, so it's not very helpful. But this means that TA_IsGenuineEx runs properly in that case, then TA_IsActivated as well, which detects the plugin is deactivated.
But when the plugin is activated, there is something inside TA_IsGenuineEx that makes the loading crash, and the DAW (Reason) displays this "Failed to open file" message.
I hope this gives you some more information as to what could be wrong. I have this happening for various users on this specific DAW (Reason). So it's a big issue for me.
Thanks for your help.
Mariano
Any chance I get some insight as to what could be causing this problem? A rights issue on specific folders/files? Please give me something to try to investigate further.
I have moved the TA code to a different place, where it's triggered by a user action, in case the problem was caused by a specific situation while the plugin was loading. But the moment the user triggers the action, the plugin crashes when it reaches the TA_ISGenuineEx function.
Sorry, yes, it was on our list today. Long story short: use the latest Propellerheads version. There was a bug in old versions that the company claims it fixed (namely, it intercepted valid "caught" exceptions and decided to "crash" the plugin that used them).
Reference to existing topic on this: https://wyday.com/forum/t/4033/ta_isgenuineex-call-from-a-vst-crashes-at-propellerhead-reason/#post-20665
If you're using the latest version and it's still behaving abnormally, give us a contact to someone in the company and we'll sort this out.
Oh, awesome! I'll ask the user to get the latest Reason version and let you know in case there's still a problem.
Thanks a lot!
Mariano
I asked the client, and he seems to have the latest Reason version: 10.4d4(build 9,878) (Stable channel).
Could you please check with Propellerheads if this version should include the fix?
Thanks.
Mariano
Contact Propellorhead support, CC us with a link to this topic, and explanation of what's happening, and we'll pressure them if they don't want to fix their bug.