Professional UI Solutions
Site Map   /  Register
 
 

Forum

Please Log In to post a new message or reply to an existing one. If you are not registered, please register.

NOTE: Some forums may be read-only if you are not currently subscribed to our technical support services.

Forums » Elegant Ribbon Tech Support » Ribbon Bar Performance Collapse All
Subject Author Date
d a Feb 2, 2015 - 5:28 AM

It’s been a while since I have had to post here as the Version 4 Ribbon Bar is very reliable and any issue we have had have been fixed extremely quickly.


But (and this is a big BUT) we have just hit a situation where the Ribbon Bar licencing control appears to try and make some network connection using LDAP Connection (can be seen via Wire shark trace).


The problem here is one of our customers has a high Latency Network eg can be in the region of 100ms it causes our application to hang on start up and the initialisation of the Ribbon Bar Is there any way to switch this feature/check off ?


Does the later versions of this product have the same issues? What’s more is this still a supported product at any version as it seems there have been no updates for nearly 2 years?

Art Wilkes Feb 4, 2015 - 10:30 AM

Dave
Great work
We will update the libraries this month.
Sales at Prof-UIS

d a Feb 4, 2015 - 3:09 AM

Further investigation led me to this article on the infraluation support forums 

http://www.infralution.com/phpBB2/viewtopic.php?t=688&highlight=rsa+slow 



I know we could download and evaluate the latest version, but as this issue only arises when the license key is provided, this makes it difficult for us to confirm via testing, 

Can you confirm whether the latest version has the fix?


Thanks

d a Feb 3, 2015 - 11:48 AM

An update for you. The Ribbon Bar does not appear to make a connection directly, but when we call


var = new Elegant.Ui.RibbonTabPage

the RibbonTabPage makes a call to CheckRuntimeLicense - which calls through the Infralution Library to the underlying Cryptography( see stack trace below) and this is slow.

When I said we had a latency of 100ms, that was an understatement, we actually have to work across a GPRS network and this License check is crippling as we have to work with on average of 500ms latency/512Kb Link with up to 50% packet lose. And the machine needs to be part of an Active Directory Domain

crypt32.dll!_CryptFindOIDInfo@12()   [Managed to Native Transition]  mscorlib.dll!System.Security.Cryptography.X509Certificates.X509Utils.FindOidInfo(System.Security.Cryptography.X509Certificates.OidKeyType keyType, string key, System.Security.Cryptography.X509Certificates.OidGroup group) + 0x124 bytes  mscorlib.dll!System.Security.Cryptography.X509Certificates.X509Utils.GetAlgIdFromOid(string oid, System.Security.Cryptography.X509Certificates.OidGroup oidGroup) + 0x86 bytes  mscorlib.dll!System.Security.Cryptography.Utils.ObjToAlgId(object hashAlg, System.Security.Cryptography.X509Certificates.OidGroup group) + 0xb0 bytes  mscorlib.dll!System.Security.Cryptography.RSACryptoServiceProvider.VerifyData(byte[] buffer, object halg, byte[] signature) + 0x1a bytes  Elegant.Ui.Common.dll!Infralution.Licensing.EncryptedLicenseProvider.LoadLicense(System.ComponentModel.LicenseContext context, System.Type type, string licenseKey) + 0x32b bytes  Elegant.Ui.Common.dll!Infralution.Licensing.EncryptedLicenseProvider.ValidateLicenseKey(string licenseParameters, string licenseKey) + 0x4d bytes  Elegant.Ui.Common.dll!Elegant.Ui.LicenserUtilities.ValidateLicenseKey(Elegant.Ui.Product product, System.Version version, string licenseKey) + 0xf9 bytes  Elegant.Ui.Common.dll!Elegant.Ui.LicenserUtilities.CheckRuntimeLicence(Elegant.Ui.Product product, string productDisplayName, System.Version productVersion, string licenseKey) + 0x7e bytes  Elegant.Ui.Common.dll!Elegant.Ui.Control.CheckRuntimeLicense() + 0x9d bytes  Elegant.Ui.Common.dll!Elegant.Ui.Control.Control() + 0x8c bytes  Elegant.Ui.Ribbon.dll!Elegant.Ui.RibbonTabPage.RibbonTabPage(bool ) + 0x7c bytes  Elegant.Ui.Ribbon.dll!Elegant.Ui.RibbonTabPage.RibbonTabPage() + 0x38 bytes  Symmetry.exe!G4T.KMPlugin.ClientApplication.Framework.MainFrame.InitializeComponent() Line 32 + 0x15 bytes C# Symmetry.exe!G4T.KMPlugin.ClientApplication.Framework.MainFrame.MainFrame() Line 70 C# Symmetry.exe!G4T.KMPlugin.ClientApplication.Framework.Program.CreateMainFrame() Line 270 + 0x15 bytes C# Symmetry.exe!G4T.KMPlugin.ClientApplication.Framework.Program.DoMainCore() Line 115 C# G4T.KMPlugin.Native.dll!G4T::KMPlugin::Native::NativeExceptionAdapter::Execute(System::Objectˆ callback, System::Objectˆ callbackData) Line 66 C++ G4T.KMPlugin.Native.dll!G4T::KMPlugin::Native::NativeExceptionAdapter::Execute(G4T::KMPlugin::Native::NativeExceptionAdapter::Callbackˆ callback) Line 34 + 0xb bytes C++ Symmetry.exe!G4T.KMPlugin.ClientApplication.Framework.Program.DoMain(string[] args) Line 51 + 0x27 bytes C# Symmetry.exe!G4T.KMPlugin.ClientApplication.Framework.Program.Main(string[] args) Line 378 C# mscoreei.dll!__CorExeMain@0()  + 0x71 bytes  mscoree.dll!_ShellShim__CorExeMain@0()  + 0x227 bytes  mscoree.dll!__CorExeMain_Exported@0()  + 0x8 bytes  kernel32.dll!@BaseThreadInitThunk@12()  + 0x12 bytes  ntdll.dll!___RtlUserThreadStart@8()  + 0x27 bytes  ntdll.dll!__RtlUserThreadStart@8()  + 0x1b bytes  Please see Microsoft Knowledge base article http://support.microsoft.com/kb/948080


 


Regards


Dave


  

Art Wilkes Feb 2, 2015 - 9:29 AM

This item has been forwarded to support.
I did not know the licensing made contact with a website.
We are considering updating the C# libraries this year.
We will be reviewing Windows 10 to see what will be our best approach.
Thanks
Prof-UIS Sales