I hope someone has a solution for this error in C6.3.
I added a new table to my DCT and now get this error.
I deleted all my clw, obj, etc.
Restarted my computer.
This app has to stay in C6.3 for a long time still.
Hi Johan,
I believe I encountered something like this a very long time ago in a very large medical application. If I’m remembering right, I had added a new table or possibly even just added enough to an existing table in that large dictionary and encountered what you presented.
I ended up creating a second separate dictionary and moved a few tables that were not related to any other to that second dictionary thus freeing enough space in the primary dictionary to keep related files together. Having two dictionaries did not present a problem. They were completely independent. I believe there is a 64k limit on the dictionary space.
Now my memory could be getting a bit fuzzy on this as it could have been maybe 15 years ago or more.
I still use c63-9058 for a very large veterinary application and agree with you on its solidity.
I had to dig back through my archives attempting to find what I did. It took me awhile. The most recent version of that medical app that I did find was dated April 2008. It is no longer being used by anyone but I still have all or at least most of what I did archived. That said, I reloaded it and CW55 onto an older computer to see if I could bring it up. I appear to be missing a registered PowerBrowse template. I didn’t think I was using PB any longer by then. My usage of PB went back to CW 2003 but that’s ancient history.
It appears that I mis-stated creating two dictionaries. What I see that I did was create two Data apps separating references to one dictionary into two independent pieces that contained no files that referenced the other. I just don’t remember the details very well now ten years+ on.
I wanted to reply to your response. I may yet poke at it out of curiosity. If I find something to further clarify what I did I will get back to you. Please don’t hesitate to ask anything. It may trigger my memory on this.
Poking your memory just in case you found the solution.
I had to change my DCT for the first time in 3 years.
Running into the same dynamic problem.
I have tied many things in the meantime.
What I have found is that if I delete the NetTalk Template from my Data DLL it compiles without the Dynamic problem.
However NetTalk is used extensively in this Multi-Dll app.
I can remove NetTalk completely from this app and replace most of it it with LibCurl but that is going to take me weeks.
Not sure if there might be another way to put the NetTalk template in somewhere where it could still be used as is.
If the DataDll does not use NetTalk, just exports the class, you could try putting NetTalk in its own DLL and see if that will compile. It uses several other classes that also should be moved to the NTExport DLL. If that works then it should just require the Apps that use NetTalk to import from the NTExport.DLL
E.g. I put the Capesoft Message in its own DLL alone. That lets me add it to any project easily by just importing that DLL to the EXE then calling a Procedure in it to Init the MessageBox class and Hook the message.
I could be wrong, but I vageuly remember something like Tom Moselys Dictionary Enhancement Foundation did something to the dct which got around this problem.
I looked and searched everywhere to see if the DEF templates can be purchased somewhere, no luck.
I removed NetTalk from my Data Dll.
My Data Dll compiles 100%.
I put NetTalk into a new Dll, as suggested by Carl.
The dll where I have put the Global NetTalk template gives a lot of errors, I think all related to NetTalk.
I have no idea how to resolve these 257 errors:
Unresolved External [email protected]_NETALL
Unresolved External [email protected]_NETALL
Unresolved External [email protected]_NETALLsbsbl
Unresolved External [email protected]_NETALL
Unresolved External [email protected]_NETALLl
Unresolved External [email protected]_NETALLl
Unresolved External [email protected]_NETALL
Unresolved External [email protected]_NETALL
Unresolved External [email protected]_NETALLsb
Unresolved External [email protected]_NETALLsb
Unresolved External [email protected]
and a lot more.
You’re making a DLL with the NetTalk code exported so it cannot be external.
I would guess the NetTalk Global Extension Multi-DLL or Build Settings are set to External. You need it Not External and Exported. I don’t use it so cannot give you specifics
NetTalk is an ABC Complaint Class (our only one) so it cannot be separated from the data dll. Pretty much all our other classes can be, but not the NetTalk classes.
There is not a switch for dll like the other CS tools.
Is there any solution you can think of.
I tried removing a lot of the other templates in the Data Dll, still the same error.
The only one that makes a difference is if I remove the NetTalk template, probably because it is the biggest one with the most dependencies and all the nice functionality.
What I’ve done in the past is removed file definitions from the dct which were used for importing or exporting data, ie txt, csv type files and then just declared those files in their import/export procedure(s), its not a big deal to define a dct table in the data declaration part of a procedure, you can copy it from the data dct source code clw very easily.
The main reason for doing those is because you dont have a file relationship with this files and typically they are only ordered by the record order, so they dont need to be tied into the filemanager class, hence they dont need to be in the dct.