Questions? Feedback?powered byOlark live chat software
Bug 1979

Registry Key Control Panel\International gets read thousands of times 14 March, 2019

Roland Mühlberger
12 December, 2018
Product: PowerBuilder Category: Other
Version: 2017 R3 Publishing: Public
Status: Analyzing Priority: P3
Classification: Resolution:
Ken Guo 13 December, 2018
Hi Roland,

Thanks for the test case. I’ll transfer this to the development team for further analysis. However as this involves underlying logic we will not modify it rashly. Appreciate your understanding. 

Regards,
Ken
Roland Mühlberger 12 December, 2018
One more interesting link: https://blogs.msdn.microsoft.com/oldnewthing/20060222-11/?p=32193
Roland Mühlberger 12 December, 2018
RegistryInternation.docx (176KB)

Hi Ken,

well, just test it with any PB application of reasonable size – it gets queried over and over again summing up to thousands of calls.

The culprit seems to be in pbshr170.dll / GetCultureValueInt which in turn seems to get called on every repaint.

I have attached two images showing the calls and also the numbers (here: 25.243 times)

Regards,

Roland
Ken Guo 12 December, 2018
logfile

Hi Roland,

I compiled a simple test case and found with Process Monitor that it reads Control Panel\International 114 times. It is not thousands of times as in your case. See attached.

Please let me know if you have any special settings? Or can you provide your test case for us to analyze?

Regards,
Ken
Roland Mühlberger 12 December, 2018
*Phenomenon: 

For some reason, PowerBuilder reads the registry key "Control Panel\International" thousands of times. One time is enough, one should think.

*Reproduce Steps:

Go into Process Monitor from Microsoft, start any application built with PowerBuilder and watch.

Remark:

We do a lot of tracking what PowerBuilder does in terms of accessing files and the registry. Besides of probably being a slowdown it also mangles up all the other accesses that are needed.
OS:
All 
Platform:
All 
Database Type:
 
Database Version: