-
Content Count
83 -
Joined
-
Last visited
-
Days Won
3
Everything posted by Ondrej Kelle
-
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)... -
git and Delphi tooling?
Ondrej Kelle replied to Lars Fosdal's topic in Project Planning and -Management
I've found this way: In the Explorer view, open your working copy file In the File History view, right-click on the first commit in your range, select "Select for Compare". Still in the File History view, right-click on the last commit in your range, select "Compare with Selected" -
git and Delphi tooling?
Ondrej Kelle replied to Lars Fosdal's topic in Project Planning and -Management
Recently, I also find GitLens extension for VS Code quite useful. -
git and Delphi tooling?
Ondrej Kelle replied to Lars Fosdal's topic in Project Planning and -Management
I find TortoiseGit useful. It's a Windows Explorer extension, similar to TortoiseSVN which you might know already. -
Variant support in chakracore-delphi
Ondrej Kelle posted a topic in Tips / Blogs / Tutorials / Videos
The new experimental/variants branch of chakracore-delphi introduces some experimental support for Variants... Read more on my blog- 6 replies
-
- chakracore
- chakracore-delphi
-
(and 1 more)
Tagged with:
-
Variant support in chakracore-delphi
Ondrej Kelle replied to Ondrej Kelle's topic in Tips / Blogs / Tutorials / Videos
Also, it already has Delphi and Free Pascal bindings: https://github.com/Coldzer0/QuickJS-Pascal- 6 replies
-
- chakracore
- chakracore-delphi
-
(and 1 more)
Tagged with:
-
Variant support in chakracore-delphi
Ondrej Kelle replied to Ondrej Kelle's topic in Tips / Blogs / Tutorials / Videos
It's interesting. Thank you!- 6 replies
-
- chakracore
- chakracore-delphi
-
(and 1 more)
Tagged with:
-
Variant support in chakracore-delphi
Ondrej Kelle replied to Ondrej Kelle's topic in Tips / Blogs / Tutorials / Videos
Thanks! You can read about their future plans here on the GitHub repo: Version 1.12 plan Overall plan I think the current ChakraCore is still very nice if you need a high-performance scripting engine with JIT and GC embedded in your desktop application (with support for Windows, MacOS and Linux) and if ES6/partial ES2017 language support is sufficient for you: here are the compatibility tables . It depends on whether you need to support the evolving ES standards and if the opensource community can provide new features. Also, security fixes - IIRC, Microsoft plan to provide them until March 2021.- 6 replies
-
- chakracore
- chakracore-delphi
-
(and 1 more)
Tagged with:
-
Delphi AES encryption/decryption
Ondrej Kelle replied to Soji's topic in RTL and Delphi Object Pascal
Also, CryptoLib4Pascal (MIT license)- 35 replies
-
- encryption
- decryption
-
(and 2 more)
Tagged with:
-
imagelist Looking for Icon Fonts support in Delphi for High-DPI and Themed app?
Ondrej Kelle replied to Carlo Barazzetta's topic in VCL
If you wanted to avoid the requirement of having the fonts installed globally in Windows you could write a design package with the fonts linked in as resources. The package, when loaded by the IDE, could load the fonts from the resources (using the code shown by @Attila Kovacs) and call Screen.ResetFonts to signal the IDE to reinitialize its font list . After that the fonts would be available to the IDE. -
Unified Memory Management - Coming with 10.4 Beta
Ondrej Kelle posted a topic in Tips / Blogs / Tutorials / Videos
Great news from Dalija Prasnikar! Thank you! https://dalijap.blogspot.com/2020/03/unified-memory-management-coming-with.html -
Setting a "nullable" property on a .NET object
Ondrej Kelle replied to Dave Nottage's topic in Windows API
The problem, I think, is that .NET's Nullable is a generic type and as such can't be exposed to COM.