Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 01/09/23 in all areas

  1. What are you talking about? How about some plain speaking rather than writing cryptic messages.
  2. Isn't that something what a ChatGPT malware would say...? 🙂
  3. A profile in GitHub created 11, forum account 10 hours ago (1 post, no rating). Only a RAR file is uploaded, based on the screenshots containing binaries. Contact info is a free Yahoo E-mail address, installations are blocked by AV and there's no real description of what FPDelphi is. Online searches show fuel pump related stuff. I really mean no offence and it can be me living under the rocks, but for someone who has no prior knowledge this is way too suspicious to check out.
  4. Arnaud Bouchez

    Cyber security Question

    Yes, compute a cryptograhic hash of the scripts (MD5 or SHA1 are not enough) before running them. But you need to ensure that the hash are provided in a safe way, e.g. as constant within a digitally signed executable. You may consider hashing ALL the scripts at startup, and compare a single hash with the expected value. Then refuse to start is something was tempered with. Instead of fixed hash, you could add an asymmetric signature of all scripts to your script folder. Then put the signature together with the files, and only store a public key within the executable. You can use https://github.com/synopse/mORMot2/tree/master/src/crypt for those tasks. This is for instance what is run at the core of https://wapt.tranquil.it/store/en/ to protect the python script within each software installation package.
  5. Lajos Juhász

    Is FireDAC extensible?

    When it was released it was not only Embarcadero could create a new driver. As far as I know this is still the case. If you have a support you can put a feature request for a new driver.
  6. Uwe Raabe

    TestInsight 1.2 released

    Duh 🤯
  7. Yes, they have disadvantages. Probably base class will fit your needs more
  8. It should be able to uninstall with something like this Prints all packages adb shell pm list packages also show the package UID adb shell pm list packages -U also include uninstalled packages shell pm list packages -u ... remove this app package from the device adb uninstall test.apk Keep data and cache directories after removal adb uninstall -k test.apk
  9. @Stano is this you or the ChatGPT malware is writing?
  10. aehimself

    AE BDSLauncher

    For the time being this is a teaser only, sources will be published on GitHub as soon as I finish up the rough edges. Due to the recent success of detecting and interacting with Delphi IDE versions / instances I decided to put together a new BDSLauncher, which allows you to set up rules to automatically decide which version and which instance of Delphi you want to open a Delphi source file with. If started without any parameters, the rule editor main window will show up: Here a list of file masks can be provided. If the file which is about to be open matches any of these, it will be opened in the version selected under. There are situations when a project has to be open for a .pas (.dfm more likely) to appear correctly. To support this, you can set a string which has to be contained in the IDE caption for it to be selected. If this is empty or there was no instances found with this criteria, a new instance will be launched with the parameters you specify (should be the main project .dproj / .dpk). If a parameter is specified (and the file indeed exists) two things can happen. Either a rule will decide which version / instance the selected file should be started in, or if there's none a selector will appear: If more rules would apply to the source file but the specified instance is not found, the last will be selected alphabetically. In case any rule was selected, no window is shown, only the IDE is launched and / or the source file is opened and the launcher will close shortly after. In theory, the new launcher should support all Delphi versions from 6 and up, however the DDE component used (to do the heavy lifting) was only tested with 7 and 10, 10.1, 10.2, 10.4 and 11. Settings are stored in AppData, so each user with access to the same PC can have different rules set up. What is left: Deeper testing after first impressions (especially with more Delphi versions. There are a few which I was forced to miss) Button / installer to change file associations to itself instead of the original BDSLauncher. This could also be used to reset these associations if a Delphi (un)installer messed these up More options (e.g. cmd/powershell/PascalScript scripting) to decide between versions / instances Allow manual rule ordering instead of the current alphabetical Add icons and / or redesign UI to be a bit more user friendly... It's kind of late now here - hence the teaser only - but I wanted to let you guys know that this is coming. Expect a new post with an alpha version in the upcoming days.
  11. David Heffernan

    Default(TMyRec) usage

    Nobody expects the Delphi compiler to optimise anything
  12. Main problem wit ChatGPT is that if you are asking about something you don't know well, it can lead you in completely wrong direction and you will never know it because you lack the expertise. And it will lead you there with a confidence of a master. And it is not wrong only occasionally, it is wrong most of the time. If you like wasting your time on wrong leads and hints, then it is absolutely the right tool for any job.
  13. Dalija Prasnikar

    ANN: Open Source Event Bus NX Horizon

    I was already working on my event bus when I discovered DEB. I would still work on mine even if I knew about DEB sooner, because I also wrote about it in my book and I cannot reason about other people's thought process It is also published as part of book code examples, but it is a feature that deserves separate repository not tied to the book. When it comes to why DEB would not fit my purpose (if I ignore the book part), is that it has more complicated code and more features that don't necessarily bring anything of value to me (for instance, using attributes for setting subscriptions), but on the other hand have big impact on performance. My even bus also supports all types as messages, so there is additional performance boost and avoiding unnecessary memory allocations when message fits into integer or small record type. And at last, my even bus has waitable subscription, so you can wait that all dispatched messages are being fully processed. This is critical feature for more complex cleanup scenarios - yes, it can also be achieved through other means, but it is easier when it is built in feature, and I use it a lot. And the most personal reason is that my code is more compatible (similar setup and calls) with my old thread-unsafe observer framework, and I can more easily and gradually refactor old code to using new one.
×