-
Content Count
3483 -
Joined
-
Last visited
-
Days Won
114
Everything posted by Lars Fosdal
-
TBinaryPacket - a wrapper class to read out sent binary data over network
Lars Fosdal replied to aehimself's topic in Algorithms, Data Structures and Class Design
Well, come to think of it - it is rare to see big-endian CPUs these days so perhaps marshalling is overkill. I would probably have had a fixed header block with header size byte header version byte datasize word data... I guess you do compression in a layer outside of this one? -
TBinaryPacket - a wrapper class to read out sent binary data over network
Lars Fosdal replied to aehimself's topic in Algorithms, Data Structures and Class Design
A couple of observations: 1. TPacketLength = Word; The first thing you write to the stream is the Packet length as a word. PPacketLength(@inData[0])^ := datalen; - but datalen is an integer. TBytes can be larger than 64K, so there are some safeguards missing. 2. If you are transmitting to a different byte order system, the PacketLength needs to be marshalled/demarshalled. -
ICS V8.66 announced
Lars Fosdal replied to Angus Robertson's topic in ICS - Internet Component Suite
We switched from SVN to git (on GitHub) this year. I really do not miss SVN at all, which sort of surprises me since I've used SVN for years. We use the UI from GitKraken with GitFlow, which makes it very trivial to make contributions. It integrates with our Jira, so it is trivial to create a branch for a specific issue on your to-do list. The best part is the ability to quickly switch between multiple local branches, and easily see who made what changes to a file. Browsing a Delphi git repository with VS Code, GitLens and OmniPascal gives amazing clarity. -
Binary size, how-to make it smaller?
Lars Fosdal replied to Wil van Antwerpen's topic in General Help
On the other hand - I use RTTI quite a bit. -
Habari Client libraries 2021.06 for Apache ActiveMQ, Eclipse GlassFish and RabbitMQ released
Lars Fosdal replied to mjustin's topic in Delphi Third-Party
Any chance of adding IBM MQ to the list of MQs? See also: https://developer.ibm.com/articles/mq-downloads/ -
TMS has some pretty powerful and flexible grids - and you can have controls in grid cells, but for something like you suggest, you'd have to do some creative programming. https://www.tmssoftware.com/site/tmsvcluipack.asp https://www.tmssoftware.com/site/advgrid.asp What you could do, in theory, is to use several TGridPanels and splitters - but yeah - it depends on the functionality you require to be grid-like.
-
Build / Output messages filtering plugin
Lars Fosdal replied to CoMPi74's topic in Delphi IDE and APIs
Just jotting down what my brain generates - what if... - Each hint warning could display the last git username that touched the file - If the file is changed but not committed, it would be your name - A filter could be added to highlight messages for specific username(s) and/or unit names - or hide messages not matching the filter -
You could also do something like this, which gives you the results converted to actual types instead of variants.
-
Build / Output messages filtering plugin
Lars Fosdal replied to CoMPi74's topic in Delphi IDE and APIs
Not that I know of. I am on my team like a hawk to have them clean up code that generates hints and warnings before they commit, so usually what I see is mine. But - it could be useful. Perhaps @dummzeuch has something up his sleeve? -
Build / Output messages filtering plugin
Lars Fosdal replied to CoMPi74's topic in Delphi IDE and APIs
When you say messages - do you mean hints and warnings? (IMO, Hints and warnings are bugs waiting to happen and needs to be fixed on sight) -
ANN: BS1 Accounting Distribution Manufacturing Source Code
Lars Fosdal replied to Trevor Davis's topic in Delphi Third-Party
Such systems usually requires large amounts of updates because of adaptations to national regulations, rates, tax law and other legislation that can be changed several times per year. I guess that is not the case for BS1. -
take a look to this REST API Server
Lars Fosdal replied to RDP1974's topic in Network, Cloud and Web
Still wondering WHY I should spend time looking at it? -
How do you open the files with regards to sharing?
-
Binary size, how-to make it smaller?
Lars Fosdal replied to Wil van Antwerpen's topic in General Help
Ok, that explains it until the next time I've forgotten about it. Thanks, @Dalija Prasnikar 🙂 -
Binary size, how-to make it smaller?
Lars Fosdal replied to Wil van Antwerpen's topic in General Help
I agree. They are the bread and butter of most apps. Still, it makes you wonder why the linker cannot eliminate more of the unused stuff. -
Apache Module with TDataSet Needs Wait Cursor
Lars Fosdal replied to corneliusdavid's topic in Network, Cloud and Web
Can it be reproduced in a miniature example, using only direct FireDAC calls? Are you sure there is no exception handling or error eating inside your library routines?- 15 replies
-
- firedac
- waitcursor
-
(and 3 more)
Tagged with:
-
Binary size, how-to make it smaller?
Lars Fosdal replied to Wil van Antwerpen's topic in General Help
Turn off RTTI if you can. -
Apache Module with TDataSet Needs Wait Cursor
Lars Fosdal replied to corneliusdavid's topic in Network, Cloud and Web
If you explicitly - without conditions - use the FireDAC.ConsoleUI.Wait unit in the project: Can you describe any errors you may get? If no errors - can you identify which call that fail? The connect or the query?- 15 replies
-
- firedac
- waitcursor
-
(and 3 more)
Tagged with:
-
Apache Module with TDataSet Needs Wait Cursor
Lars Fosdal replied to corneliusdavid's topic in Network, Cloud and Web
What happens if you include the console version unconditionally?- 15 replies
-
- firedac
- waitcursor
-
(and 3 more)
Tagged with:
-
Apache Module with TDataSet Needs Wait Cursor
Lars Fosdal replied to corneliusdavid's topic in Network, Cloud and Web
Have you tried adding this to your uses clause? {$ifdef Console} FireDAC.ConsoleUI.Wait, {$else} FireDAC.FMXUI.Wait, FireDAC.Comp.UI, {$endif}- 15 replies
-
- firedac
- waitcursor
-
(and 3 more)
Tagged with:
-
A Curious Inheritance Problem... what pattern solves it?
Lars Fosdal replied to David Schwartz's topic in RTL and Delphi Object Pascal
My workaround for generic classes is a non-generic base class. The challenge is always how to wrap stuff in such a way that you can get done what you need get done with the methods and properties defined in the abstract base class. I.e. Keep the T stuff out of the methods as far as possible. Rough example... type TxQuery = class abstract protected function GetSQL: TStrings; virtual; abstract; function GetDataSet: TDataSet; virtual; abstract; public constructor Create; virtual; // doesn't really need to do anything but exist procedure Execute; virtual; abstract; property SQL: TStrings read GetSQL; property DataSet: TDataSet read GetDataSet; end; TxQuery<T: TFDDataSet> = class(TxQuery) private FiQuery: T; protected // overrides property iQuery: T read FiQuery write FiQuery; public // overrides constructor Create; override; // initialize the T stuff end; TxQueryClass = class of TxQuery; -
OmniPascal: Auto-Implementation of methods not working
Lars Fosdal replied to Der schöne Günther's topic in Delphi Third-Party
Perhaps file an issue here: https://bitbucket.org/Wosi/omnipascalissues/issues -
File Copy implementation with Progress Callback
Lars Fosdal replied to Tommi Prami's topic in Algorithms, Data Structures and Class Design
BTW: Did you try CopyFileEx? https://docs.microsoft.com/en-us/windows/win32/api/winbase/nf-winbase-copyfileexa -
File Copy implementation with Progress Callback
Lars Fosdal replied to Tommi Prami's topic in Algorithms, Data Structures and Class Design
DoCopy calls WinAPI.Windows function CopyFile; external kernelbase name 'CopyFileW'; So, your guess is good as mine... -
File Copy implementation with Progress Callback
Lars Fosdal replied to Tommi Prami's topic in Algorithms, Data Structures and Class Design
Callstack?