Treeview crashes after 1906 update

Hi there,

Since updating Office to Version 1906, Treeview cant seem to handle more than a few thousand nodes. I have a database with nearly 50K records that now crashes every time I try to run it. Does anyone else have this issue, if so is there a fix?

Thanks in advance.

Darren

 

Question Info


Last updated September 3, 2019 Views 364 Applies to:

* Please try a lower page number.

* Please enter only numbers.

* Please try a lower page number.

* Please enter only numbers.

I am assuming you are referring to MSFT's Treeview control. What is the version of comctl32.ocx in the syswow64 folder?

I bet you it has not changed in years, so it is not the culprit. Your VBA code presumably has not changed either. Maybe the data has? Try again with data from last month.

Also decompile the application.

Also, are other users seeing this?

If you want a workaround, I have heard that there are other treeview controls out there. They may have a different api so may take a bit of effort to implement.

-Tom.
Microsoft Access MVP
Phoenix, AZ

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

Hi Tom,

Thanks for your response, I tried using data from a month ago to no avail. I also double checked and there's nothing wrong with the data/code/files (I downloaded VB6 Common Controls and re-registered it). Long story short, I reverted Office back to Version 1905 and the issue went away. 

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

Is there a way you can isolate the issue to the bare minimum and post it in a public place (like a free OneDrive account) so we can take a look?

Presumably this would involve a table with anonymized data, a form with treeview and the code to load it.

-Tom.
Microsoft Access MVP
Phoenix, AZ

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

Same problem here. Solution was exactly same to the DB85TDR's. Meanwhile, when I reduce the number of records on the table that the Treeview is based on from 3700 to about 2000, the problem goes away. It looks like after 1906 update, treeview control can't handle datasets with more than 3000 records anymore. 

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

Same problem. Tree used to load with approximately 7000 records. Now, opening the respective form closes Access entirely without any warning. Not very happy about this.

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

The Treeview control you're using was never intended to work in Access, so it's kinda hard to get mad at MSFT when a change they make causes problems with a control you shouldn't be using. Granted many people use the Treeview in Access, and for the most part it behaves, but that still doesn't mean it's the best control to use.

There's an all-VBA control here:

https://jkp-ads.com/Articles/treeview.asp

There's a sample Access database that shows how to use it.

Scott McDaniel, Access MVP 2009 - 2019
www.infotrakker.com
scott@infotrakker.com
(803) 221-0200
Skype: scottmcd9999

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

I never said I was mad at MSFT, as if that would change anything.  I'm rightfully not happy. The condition represents an unanticipated and unknown cost to me.

I have used the (MS)COMCTL.(x).Treeview in this particular application for well over the past 12 of its 22+ years since implementation. Whether it was MSFT intended or not, the control has worked effectively, with drag and drop functionality among open forms.  To tell me I should not use it is one, not helpful, and two, condescending.

My clients will at some point update their respective Office installations.  So I am stuck. How long do I wait for the fix, if any?  Do I add conditions to the treeview loading to implement a maximum numbers of nodes? Or do I reengineer all my treeview code with a new control, whether that is JKP's or not?

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

It would be helpful if we had a repro scenario, as simple as possible. For i = 1 to 7000 add a node. Can you put that together?

-Tom.
Microsoft Access MVP
Phoenix, AZ

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

I have the same problem.

The application works perfectly in clients that take updates biannually.

We narrowed the issue starting with build 1906 build 11727.20230  our build is 11727.20244

So, the same dataset fails on those builds but not on earlier builds.

I think the issue is probably related to the number of Nodes being loaded.

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

The source recordset has 7491 records.

I created a table and added a record to it for every node added.

3072 records loaded before application crash.

 

Did this solve your problem?

Sorry this didn't help.

Great! Thanks for marking this as the answer.

How satisfied are you with this reply?

Thanks for your feedback, it helps us improve the site.

How satisfied are you with this response?

Thanks for your feedback.

* Please try a lower page number.

* Please enter only numbers.

* Please try a lower page number.

* Please enter only numbers.