-
Content Count
84 -
Joined
-
Last visited
-
Days Won
3
Ondrej Kelle last won the day on July 24 2022
Ondrej Kelle had the most liked content!
Community Reputation
56 ExcellentAbout Ondrej Kelle
Recent Profile Visitors
-
Memory access problem when exchanging WideString in OLE object written in Delphi
Ondrej Kelle replied to kihor's topic in Windows API
Just an idea. Shouldn't the calling convention for an automation object be safecall rather than stdcall? -
ForEach runs only one "thread" at time
Ondrej Kelle replied to Tommi Prami's topic in OmniThreadLibrary
`ProcessMessages` is never called... -
Calling Async from a thread causes an exception
Ondrej Kelle replied to andrey.b's topic in OmniThreadLibrary
I'm guessing your Form1 doesn't have a window handle yet in its OnCreate event. Try calling HandleNeeded before creating the thread, or move your code to OnShow or somewhere else where the form already has been initialized including the window handle.- 6 replies
-
- async
- createanonymousthread
-
(and 2 more)
Tagged with:
-
Run process with normal user privileges from elevated process
Ondrej Kelle replied to PawelPepe's topic in Windows API
Hi, perhaps this helps: A long time ago, I've solved a similar problem differently. I split the setup into two processes: 1. client with UI and 2. elevated server with no UI. I used some modified old-style DataSnap code for inter-process communication which was easy at the time but that's just an implementation detail. https://tondrej.blogspot.com/2007/06/datasnap-to-rescue.html -
does SetLength for an array actually release memory?
Ondrej Kelle replied to dummzeuch's topic in RTL and Delphi Object Pascal
According to the documentation, it should: -
A long time ago I wrote one for files in the $(DELPHI)\Source directory: https://cc.embarcadero.com/Item/18989 It could be adjusted to work for any files on the library search path.
-
(I apologise if I'm missing the context here.) Automatically and unconditionally sorting units alphabetically doesn't seem to be a good idea. If you have multiple units exposing the same identifier then changing the order of units in the uses clause changes how they are resolved, probably leading to unintended changes to runtime behaviour of your code.
-
GExperts current source does not contain a build package for RS 11.1 (03/Apr/2022)
Ondrej Kelle replied to David Hoyle's topic in GExperts
git svn rebase is what I usually do. -
Build / Output messages filtering plugin
Ondrej Kelle replied to CoMPi74's topic in Delphi IDE and APIs
Hi. Sorry, I haven't used it for years now and I have no idea. -
Without UNION ALL referencing itself, it's just a non-recursive CTE.
-
Your CTE is in fact not recursive as it doesn't reference itself or use UNION ALL. Generalized syntax for a recursive CTE looks like this: WITH RECURSIVE <cte_alias> AS ( SELECT <parent data> -- root node’s data UNION ALL SELECT <child data> -- children’s data JOIN <cte_alias> ON <parent_link> ) -- DO // for the Delphians SELECT * FROM <cte_alias> Source: https://www.firebirdsql.org/file/community/ppts/fbcon11/FBTrees2011.pdf
-
https://www.delphipower.xyz/guide_7/adding_new_application_templates.html Alternatively, you could write a design-time IDE extension implementing IOTAProjectCreator interface.
-
Build / Output messages filtering plugin
Ondrej Kelle replied to CoMPi74's topic in Delphi IDE and APIs
From the comment about TLine from coreide60.bpl, it might have been Delphi 6. Sorry if it's no longer applicable. -
Build / Output messages filtering plugin
Ondrej Kelle replied to CoMPi74's topic in Delphi IDE and APIs
Years ago I wrote the "JEDI Uses Wizard" which scanned compiler messages to "catch" unresolved symbol errors and offer adding appropriate units to the uses clause. With no official OpenTools API available, it had to use a hack to retrieve the compiler output from the message window's treeview. The code is very old and perhaps a bit dangerous (although back then it seemed stable) and I have no idea if it still works today (the IDE internals might have changed). See if it helps you: https://github.com/project-jedi/jcl/blob/master/jcl/experts/useswizard/JCLUsesWizard.pas -
WASM engine in pure Pascal - an interesting open source project to watch!
Ondrej Kelle replied to Edwin Yip's topic in RTL and Delphi Object Pascal
There's an option of running WebAssembly via ChakraCore. I've blogged about it here: WebAssembly with Delphi and ChakraCore. There's source code for Delphi 7 or higher and Free Pascal 3.0.4 or higher. It should be possible to use V8 or SpiderMonkey in a similar way. I haven't tried this. I also know of some WebAssembly runtimes like wasmtime and wasmer (these two are both written in Rust) but unfortunately their C-style API is still incomplete (even the API spec itself is still work in progress)...