TAdvTreeView on VCL UI Pack

Delphi 10.3.2
No Problem with VCL Component pack, Problem with VCL UI Pack > both latest versions
TAdvTree.ColumnsAppearance.TopFontColor does not exist
TAdvTree.ColumnsAppearance.Stroke.Style does not exist
TAdvTree.GroupsAppearance.TopFill.Kind does not exist
These and other similar Errors show, when opening the Project.

I already un- and re-installed the Packs => same result.

Easy to reproduce: Create a new Project on a machine with VCL Component Pack with just a TAdvTreeView, save that and reopen it on a machine with VCL UI Pack installed !

Thanks/Regards, Tom

The TAdvTreeView was restructured in TMS VCL UI Pack (only component where we needed to do this)

See: https://www.tmssoftware.com/site/advtreeview.asp?s=faq&show=986 
To begin with, open forms that contain TAdvTreeView, ignore property errors, save the form file again and then recompile.
You can also read this if you have some errors with event's declaration.

We had one form with a TAdvTreeView that would not load after upgrading, even after ignoring all the property errors, we got "Error creating form, stream read error".  We managed to resolve this by manually removing the tree view from the dfm file and adding it back in the designer.  We set most properties in code so it wasn't too difficult.

However this project still has linker errors, any idea how we can resolve these?
[ilink32 Error] Error: Unresolved external 'InternetOpenW' referenced from ...\TMSVCLUIPACKPKGDXE11.LIB|AdvUtils
[ilink32 Error] Error: Unresolved external 'InternetOpenUrlW' referenced from ...\TMSVCLUIPACKPKGDXE11.LIB|AdvUtils
[ilink32 Error] Error: Unresolved external 'HttpQueryInfoW' referenced from ...TMSVCLUIPACKPKGDXE11.LIB|AdvUtils
[ilink32 Error] Error: Unresolved external 'InternetReadFile' referenced from ...\TMSVCLUIPACKPKGDXE11.LIB|AdvUtils
[ilink32 Error] Error: Unresolved external 'InternetCloseHandle' referenced from ...TMSVCLUIPACKPKGDXE11.LIB|AdvUtils   

Can it be there are still old advutils.hpp files on your system?
Search your hard disk and delete such old version files.

Alternatively, you can workaround this by adding
#pragma link "wininet.lib" to your app main CPP file
Well AdvUtils.hpp is in the VCL UI Pack folder, and still seems to be used by many things, e.g. it is included by Advricheditorbase.hpp, also just adding a TAdvStringGrid to a new form adds these includes:
#include "AdvGrid.hpp"
#include "AdvObj.hpp"
#include "AdvUtil.hpp"
#include "BaseGrid.hpp"

The wininet pragma has resolved it for now but it would be nice not to have to do that.

Can you verify that 

1) there is only one AdvUtils.hpp on your machine
2) this AdvUtils.hpp file has the line
#pragma link "wininet.lib"
(if it is the latest version, it should have this line)
There are two, with singular and plural names:
The plural one has the wininet pragma but it is the singular one that is automatically added by the designer (see above)

When you use TAdvTreeView  , AdvUtils.hpp should be (indirectly at least) used.

Apparently not, I can build a project with a TAdvTreeView even after renaming AdvUtils.hpp

That is an indication the compiler uses another AdvUtils.hpp as the unit ADVUTILS.PAS is used from TAdvTreeView.

I note that when adding a TAdvTreeView to a new project the version is, but on the website the latest version is, might that explain what is happening?

This is on C++ Builder 10.2.2 using classic 32 bit compiler.  I've just completely reinstalled TMS VCL UI Pack

I checked this and version number on website and in source code are out of sync
The version v1.1.4.2 is what is in the latest TMS VCL UI Pack, so you have the latest version installed.
We'll look to sync these version numbers again, sorry for the confusion.

I have the same issue. I'm upgrading from Tokyo 10.2.3 to Rio 10.3.2. This is the first time I'm installing the new UI Components. If I just ignore the error I get a error, "Error creating form, stream read error" and can't view the form. I'm installing the latest version of the UI component pack, downloaded yesterday. This is a major issue for me.



See this FAQ


Hi Bruno - yes I've read the FAQ and I see you've made some fundamental changes to the AdvTreeView component. But how do I fix it? What's the workaround? At the moment I cannot view my form after I get the stream read error.

Thanks, Steve

Hi Steve,

same here! I end up with editing the .dfm file (delete the complete TAdvTreeView). Save the dfm, reload the Form in IDE, add a new TAdvTreeView. Rebuild the Groups/Columns from scratch.
Thank's God i have only one Form with TAdvTreeView! 


Am I right in thinking you've changed the event names for TAdvCheckTreeView e.g. OnAfterCheckNode, OnBeforeUpdateNode, OnBeforeReorderNode, OnAfterReorderNode?

I hope I'm wrong, otherwise I've got a lot to do to make my application work again as intended.


These events have not changed.

My error - I added a TAdvCheckTreeView, instead of TAdvCheckedTreeView