• Welcome to Jose's Read Only Forum 2023.

bc9Basic likes TCLib

Started by James C. Fuller, March 25, 2016, 06:34:45 PM

Previous topic - Next topic

0 Members and 1 Guest are viewing this topic.

James C. Fuller

Quote from: Frederick J. Harris on December 14, 2016, 05:30:37 AM
Oh, and by the way Jim, I did build that resource script program we were working on with my version of TCLib and got the same exact number you posted - it was around 4 k or something like that.  You are right about the resource script GUIs being a bit smaller than comparable RegisterClass()/CreateWindow() apps.  I recall I had to add LPCTSTR, LPCWSTR, and LPCSTR to my tchar.h file, for the WinMain() parameters, which was a needed correction anyway.

  There is one serious drawback using resource dialogs: They can very easily be hacked.
This was a very big issue for my client. I had always used resource dialogs in my work so his concern was the reason I developed my in memory dialog templates for PowerBASIC, along with a little script format for simple creation.  This was before DDT.
  Now we have the increase in exe size by having to include the code necessary to create in memory dialogs. I used the Spread 3.0 control and some of the format arrays were HUGE.
I ended up using aPlib to compress the dialog scripts to a fraction of the original size and store them as RCDATA in the resource file. I ported the aPLib fast asm decompress routine to PowerBASIC and used that for super  fast decompression of the RCDATA.
I've done the ground work for bc9Basic and TCLib also. I could not get anyone to port the aPlib fasm 64bit fast decompress routine to ML64 so I installed fasm and did it myself. I have it included in my TCLib version. Works great. I plan to showcase this in the future but I'm still busy porting José's CWindow/Afx code.


Frederick J. Harris

..in memory dialog templates...

I recall you spoke of those and posted about them before James, but to be honest, since I've always tended to shy away from Dialog based solutions, I never really figured out what they were all about.  If you wouldn't mind, do you have a link to where you've explained these in terms of what they are and the issues they are designed to solve?  I'm kind of drawing a blank on your statement that dialogs are easy to hack.   

James C. Fuller

  My client had some of the best ratings in his line of work.
He did not want competitors to extract his data input screens, re-label them, and use them as their own.
This is how it's done: