|
Rank: Member
Groups: Registered
Joined: 2/1/2010 Posts: 27
|
After updating from Thesaurus 1.1.0 to 1.1.1 I keep getting the trial version dialog. When I enter my license key I get a positive message and the hint to rebuild the solution. However, even after rebuilding, the dialog keeps popping up. I don't know if this has maybe sth. to do with my previous post a couple of minutes ago (Maybe this is the cause for the first problem?) Wolfgang Wolfgang
|
|
Rank: Advanced Member
Groups: Administrators, Registered
Joined: 10/20/2004 Posts: 456
|
Hi Wolfgang, It's likely your licenses.licx file just needs updating after changing versions, you can remove the version details from the line referring to Thesaurus, please see this KB article which shows how, http://keyoti.com/kb/Def...iew&questId=51&catId=53
If you still have any trouble please paste what you have in licenses.licx Dan Dan Wright
|
|
Rank: Member
Groups: Registered
Joined: 2/1/2010 Posts: 27
|
Hi Dan, I have a plugin component using TXTextControl and a framework app (the .exe). I did update the license files of both solutions like this: 1. The plugin: Keyoti.RapidSpell.TX.RapidSpellAsYouType, TXTextControl.RapidSpell.NET, Version=15.4.1.9960, Culture=neutral, PublicKeyToken=58d9fd2e9ec4dc0e Keyoti.RapidSpell.TX.RapidSpellDialog, TXTextControl.RapidSpell.NET, Version=15.4.1.9960, Culture=neutral, PublicKeyToken=58d9fd2e9ec4dc0e Keyoti.Thesaurus.Windows.Thesaurus, Keyoti.Thesaurus.Windows.NET2 Keyoti.Thesaurus.Model.ThesaurusEngine, Keyoti.Thesaurus.Model.NET2 2. The .exe using the plugin: TXTextControl.TextControl, TXTextControl, Version=15.1.800.500, Culture=neutral, PublicKeyToken=6b83fe9a75cfb638 Keyoti.RapidSpell.TX.RapidSpellAsYouType, TXTextControl.RapidSpell.NET, Version=15.4.1.9960, Culture=neutral, PublicKeyToken=58d9fd2e9ec4dc0e Keyoti.RapidSpell.TX.RapidSpellDialog, TXTextControl.RapidSpell.NET, Version=15.4.1.9960, Culture=neutral, PublicKeyToken=58d9fd2e9ec4dc0e Keyoti.Thesaurus.Windows.Thesaurus, Keyoti.Thesaurus.Windows.NET2 Keyoti.Thesaurus.Model.ThesaurusEngine, Keyoti.Thesaurus.Model.NET2 Wolfgang Wolfgang
|
|
Rank: Advanced Member
Groups: Administrators, Registered
Joined: 10/20/2004 Posts: 456
|
Can you check that the license key is being stored correctly; You can verify that the key is stored properly by looking under, \Documents and Settings\<USER>\Local Settings\Application Data\IsolatedStorage there are subfolders with garbage names but eventually you'll find StrongName.xxxxx some of those may have AssemFiles in it, which has a file inside called Keyoti.Thesaurus.Windows which is a text file holding our key, eg. C:\Documents and Settings\Wolfgang\Local Settings\Application Data\IsolatedStorage\kmsgzqpk.hi5\kgvtwnhg.s0t\StrongName.kmfzrqb1neprwu4n4vxxsyntyt0vycsy\AssemFiles Can you also let me know if you're using a build tool, or building under a different system user? Thanks, Dan Dan Wright
|
|
Rank: Member
Groups: Registered
Joined: 2/1/2010 Posts: 27
|
I found three Keyoti.Thesaurus.Windows files with the following contents: 3A39xxxxxxxxxxxxxxxxxxxxxxxxxxxx 4039xxxxxxxxxxxxxxxxxxxxxxxxxxxx 3A39xxxxxxxxxxxxxxxxxxxxxxxxxxxx I bought two copies of the Thesaurus (don't ask me why): The 4039xxxxxxxxxxxxxxxxxxxxxxxxxxxx key is from 8/18/2007. The 4039xxxxxxxxxxxxxxxxxxxxxxxxxxxx key is from 10/4/2005 and came in a package together with RapidSpell. Is the redundant key the problem? I'm doing a regular build under VS 2008 (Vista Ultimate x64). Wolfgang Wolfgang
|
|
Rank: Advanced Member
Groups: Administrators, Registered
Joined: 10/20/2004 Posts: 456
|
Wolfgang, The keys starting 3A39 are time trial keys that are generated when there isn't a full key. Can you replace the keys in the text file that start 3A39... with the keys that start 4039... and build again. Replacing them manually should resolve it, I'm unsure why it isn't registering in the right place, could be a reference issue. Let me know how that goes. Dan Dan Wright
|
|
Rank: Member
Groups: Registered
Joined: 2/1/2010 Posts: 27
|
Dan, It looks as if this fixed it but I cannot yet say for sure because I've run into multiple build problems (updating Infragistics controls, TXTextControl, and the thesaurus all at the same time). I'll let you know how it goes but it'll be a couple of days... BTW, can I delete the redundant assem files/folders? Wolfgang Wolfgang
|
|
Rank: Advanced Member
Groups: Administrators, Registered
Joined: 10/20/2004 Posts: 456
|
I would suggest not deleting them until everything is stable and working correctly. Let us know how it goes. Dan Dan Wright
|
|
Rank: Member
Groups: Registered
Joined: 2/1/2010 Posts: 27
|
Dan, Yep, the problem is gone. It must have been that when downloading the most recent version of thesaurus from your website it got installed with the trial key and entering my full product key didn't remove the trial. After I followed your instructions to manually replace the trial key in the AssemFile everthing worked again. Thank you for your quick help! Wolfgang Wolfgang
|
|
Rank: Member
Groups: Registered
Joined: 2/1/2010 Posts: 27
|
In the process of hunting down my other bug ("Error creating window handle") I noticed that when TXTextControl is loaded dynamically, the Keyoti thesaurus throws a LicenseException. This may still be a consequence of what we discussed above. Maybe I still didn't notice the message at the time because there seem to be no further consequences (I confirmed that the thesaurs works as expected) but I'd still like the error message to go away - plus who knows if this couldn't cause problems in some situations (maybe even my "window handle" problem)? Just as a quick recap of the situationI back in February (following Dan's recommendations above): There are 3 AssemFiles folders on my drive that contain Keyoti.Thesaurus.Windows files and they all contain the same key, starting with 4039... Wolfgang Wolfgang
|
|
Rank: Advanced Member
Groups: Administrators, Registered
Joined: 8/13/2004 Posts: 2,669 Location: Canada
|
Wolfgang, is the licensing exception a first chance exception that you're seeing? In other words, is the exception manifesting itself in a nag screen asking you to register? Or, you mention that it's when TX is loaded dynamically - are you also loading the thesaurus from a plug-in DLL? If so, then that could be the problem - the .NET licensing mechanism is intended to force you to embed a license in your EXE (not DLL). That requires the inclusion of our line in licenses.licx, to be in the licenses.licx file from your EXE project. Now I write that, I reread your early posts and it seems you're OK with this - but perhaps it's worth leaving as a reminder. Anyhow, please let me know if it's just a first chance exception. Jim -your feedback is helpful to other users, thank you!-your feedback is helpful to other users, thank you!
|
|
Rank: Member
Groups: Registered
Joined: 2/1/2010 Posts: 27
|
Jim, There is no nag screen and as far as I can tell the components are loaded and are fully usable. However, sometimes when I try to open the plugin containing the TXTextControl and the thesaurus control in the VS designer, it cannot be loaded with an error like "Thesaurus... cannot be cast to IThesaurusable...". I would think that the problems are related. Here is the output from VS when the assemblies are dynamically loaded (The app does not crash): 'iwrite4Life.vshost.exe' (Managed): Loaded 'C:\Users\Wolfgang Braun\Documents\Visual Studio 2008\Projects\iwr4\iwr4\bin\x86\Debug\InvalidItem.dll', Symbols loaded. 'iwrite4Life.vshost.exe' (Managed): Loaded 'C:\Users\Wolfgang Braun\Documents\Visual Studio 2008\Projects\iwr4\iwr4\bin\x86\Debug\Licensing.dll', Symbols loaded. 'iwrite4Life.vshost.exe' (Managed): Loaded 'C:\Users\Wolfgang Braun\Documents\Visual Studio 2008\Projects\iwr4\iwr4\bin\x86\Debug\TXTextControl.RapidSpell.NET.dll' 'iwrite4Life.vshost.exe' (Managed): Loaded 'C:\Users\Wolfgang Braun\Documents\Visual Studio 2008\Projects\iwr4\iwr4\bin\x86\Debug\Keyoti.Thesaurus.Windows.NET2.dll' 'iwrite4Life.vshost.exe' (Managed): Loaded 'C:\Users\Wolfgang Braun\Documents\Visual Studio 2008\Projects\iwr4\iwr4\bin\x86\Debug\Keyoti.Thesaurus.TXTextControlAdapter.v15.1.dll' 'iwrite4Life.vshost.exe' (Managed): Loaded 'C:\Users\Wolfgang Braun\Documents\Visual Studio 2008\Projects\iwr4\iwr4\bin\x86\Debug\Keyoti.Thesaurus.Model.NET2.dll' A first chance exception of type 'System.ComponentModel.LicenseException' occurred in System.dll 'iwrite4Life.vshost.exe' (Managed): Loaded 'C:\Users\Wolfgang Braun\Documents\Visual Studio 2008\Projects\iwr4\iwr4\bin\x86\Debug\Keyoti.RapidSpellMDict.dll' A first chance exception of type 'System.Deployment.Application.InvalidDeploymentException' occurred in System.Deployment.dll The thread 0x1668 has exited with code 0 (0x0). Wolfgang Wolfgang
|
|
Rank: Advanced Member
Groups: Administrators, Registered
Joined: 8/13/2004 Posts: 2,669 Location: Canada
|
>"Thesaurus... cannot be cast to IThesaurusable..." That really sounds like a DLL mismatch. Can you check all thesaurus DLLs please, and make sure that every copy of them (that could be used), including what's in the GAC (if any) - check that they all have consistent version numbers. I imagine, that the error you describe is because the TX adapter DLL (which has a class that implements IThesaurusable from the main DLL) is referencing a different version to the one your app is loading, and so it sees 2 IThesaurusable interfaces. I find the Loaded Modules window in VS very helpful in seeing what DLLs and which versions it has loaded. Jim -your feedback is helpful to other users, thank you!-your feedback is helpful to other users, thank you!
|
|
Rank: Member
Groups: Registered
Joined: 2/1/2010 Posts: 27
|
The only Keyoti things in the GAC are Keyoti.Thesaurus.Model 1.1.8729 Keyoti.Thesaurs.Windows 1.1.1.8729 The Keyoti.Thesaurus.Model.Net2.dll that's loaded by my app from a project directory is 1.1.1.8729 (12/28/2009 12:45 pm) All others on my disk (in various project directories) have the same date and time with two exceptions (which I believe cannot possibly be related to the problem): 1.1.0.8218 in an unrelated project directory and 1.1.1.8729 (again, but with a date/time of 7/29/2008 5/20 pm) in my download directory under TXTextControl DotNet 1400\Full-AsYouType-CS14\bin\x64. Hmm... Wolfgang Wolfgang
|
|
Rank: Advanced Member
Groups: Administrators, Registered
Joined: 8/13/2004 Posts: 2,669 Location: Canada
|
Wolfgang, could you post the complete error message shown when it happens please? I guess it's in German... The best way to debug it would be to have 2 instances of VS open, one as usual and one for debugging. You want to attach the debugging instance to the main one (using Attach to process), and that way, when the error occurs, you can check the loaded modules window to see what DLLs the main VS has actually opened. Specifically to check the version numbers and if the DLLs are loaded OK. Best Jim -your feedback is helpful to other users, thank you!-your feedback is helpful to other users, thank you!
|
|
Rank: Member
Groups: Registered
Joined: 2/1/2010 Posts: 27
|
Jim, I will do what you suggest but first there's one more thing that I found over the weekend. The license exception occurs after loading the thesaurus but it seems that the thesaurus tries to load the Keyoti spell checker while I have switched to the TXTextControl thing. Here is the load sequence again, followed by the exception message that I got when letting the debugger break on the first-chance exception: 'iwrite4Life.vshost.exe' (Managed): Loaded 'C:\Users\Wolfgang Braun\Documents\Visual Studio 2008\Projects\iwr4\iwr4\bin\x86\Debug\TXTextControl.RapidSpell.NET.dll' 'iwrite4Life.vshost.exe' (Managed): Loaded 'C:\Users\Wolfgang Braun\Documents\Visual Studio 2008\Projects\iwr4\iwr4\bin\x86\Debug\Keyoti.Thesaurus.Windows.NET2.dll' 'iwrite4Life.vshost.exe' (Managed): Loaded 'C:\Users\Wolfgang Braun\Documents\Visual Studio 2008\Projects\iwr4\iwr4\bin\x86\Debug\Keyoti.Thesaurus.TXTextControlAdapter.v15.1.dll' 'iwrite4Life.vshost.exe' (Managed): Loaded 'C:\Users\Wolfgang Braun\Documents\Visual Studio 2008\Projects\iwr4\iwr4\bin\x86\Debug\Keyoti.Thesaurus.Model.NET2.dll' System.ComponentModel.LicenseException occurred Message="An instance of type 'Keyoti.RapidSpell.RapidSpellChecker' was being created, and a valid license could not be granted for the type 'Keyoti.RapidSpell.RapidSpellChecker'. Please, contact the manufacturer of the component for more information." Source="System" StackTrace: at System.ComponentModel.LicenseManager.Validate(Type type, Object instance) InnerException: Shouldn't that be TXTextControl.RapidSpell.Net instead? Wolfgang Wolfgang
|
|
Rank: Advanced Member
Groups: Administrators, Registered
Joined: 8/13/2004 Posts: 2,669 Location: Canada
|
That's fine - the way the licensing works (because the same license is used for RapidSpellDialog and RapidSpellAsYouType) we try a few times to get the license - hence the caught exception. No, the type is fine, the namespace was the same as the regular product, although now it will be Keyoti.RapidSpell.TX... just to help run both products at the same time. I'm confused, is the licensing problem just that there's a first chance exception, or is it that the nag is shown? Best Jim -your feedback is helpful to other users, thank you!-your feedback is helpful to other users, thank you!
|
|
Rank: Member
Groups: Registered
Joined: 2/1/2010 Posts: 27
|
Sorry if I confused you - its *only* a first chance exception, *no* nag screen. I guess from what you say above ("we try a few times...") it is probably clear that I don't need to worry about the first chance. Wolfgang Wolfgang
|
|