Jump to content


Popular Content

Showing content with the highest reputation on 06/02/20 in all areas

  1. Dmitry Arefiev

    Revisiting TThreadedQueue and TMonitor

    Thanks a lot ! The proposed here changes will be in 10.4 Update 1 with some modifications. Mostly due to new cross-platform AtomicCmpExchange128 for 64bit platforms.
  2. Primož Gabrijelčič

    OmniThreadLibrary 3.07.8

    OmniThreadLibrary 3.07.8 has just been released. It contains few small fixes + support for Delphi 10.4 Sydney. Changelog: New features: Implemented IOmniTask.RegisterWaitObject with an anonymous method callback. [Jacek Laskowski] donated a new OTL icon (res\OTL.ico). Added Delphi 10.4 Syndey packages. Bug fixes: [sglienke] A reference to an anonymous method executor in IOmniTask is cleaned up as soon as possible. This allows OTL tasks to be executed from a package. [issue #132] TOmniMREW.TryEnterReadLock and .TryEnterWriteLock were returning True on timeout. SetOnMessage(nil) works correctly. Fixed invalid FreeAndNil of an interface in TOmniFuture<T>.Execute. Compiles with Delphi 10.4 Sydney. https://github.com/gabr42/OmniThreadLibrary/releases/tag/release-3.07.8
  3. pyscripter

    Revisiting TThreadedQueue and TMonitor

    This is worth a certain degree of celebration. I cannot remember Embarcadero/Inprice/Borland etc. being so responsive ever. It also demonstrates the power of the collective efforts of the community to make Delphi better.
  4. Anders Melander

    Revisiting TThreadedQueue and TMonitor

    I'm afraid your experience of "professionals" differ from mine. Supposedly the original implementation was written by "professionals".
  5. Darian Miller

    Revisiting TThreadedQueue and TMonitor

    I agree! I had switched to QP to type up a new issue and thought the same thing. When I closed that window, this window beeped with your reply - must be good karma!
  6. Esteban Pacheco

    Search Declaration now works flawlessly in 10.4

    CodeRush is leaps and bounds behind Resharper. Rider is the pinnacle of how an IDE should be. Hopefully Delphi's IDE will be on that direction now that the plumbing is in place (LSP, automatic IDE updater).
  7. Anders Melander

    Revisiting TThreadedQueue and TMonitor

    It seems to me that these failures have more to do with the test not properly taking the timer resolution into account, than any possible remaining problems with TMonitor. Like it has already been mentioned it's perfectly normal, and expected, for a wait function to return early: https://docs.microsoft.com/da-dk/windows/win32/sync/wait-functions?redirectedfrom=MSDN#wait-functions-and-time-out-intervals
  8. GExperts has an option to automatically close it on successful compile. Maybe you have enabled it? (Default is disabled though.)
  9. PeterPanettone

    Search Declaration now works flawlessly in 10.4

    A reproducible example would be fine.
  10. Geoffrey Smith

    Sending Email via GMail Using OAuth 2.0 via Indy

    I have updated the demo. The demo now includes saving and loading refresh tokens, as well as checking for expired access_tokens and refreshing them with the refresh_token. Have a look at https://github.com/geoffsmith82/GmailAuthSMTP/ Geoffrey
  11. Vincent Parrett

    Search Declaration now works flawlessly in 10.4

    Nope, not true. It completely fails when the identifier or type in is in another (referenced) project in the same project group. Makes working on a large project quite painful.
  12. Darian Miller

    Revisiting TThreadedQueue and TMonitor

    1. Windows 10 build 18363. i7-7700K 4.2GHz, 4 cores, 8 logical processors, 64GB RAM. 2. pyscripter explained why a low pop timeout fails earlier in this thread and is why there's a minimum of 20ms in the stress tester now. The test originally failed less in a virtual environment (VMWare Workstation) so I switched to testing on physical machine. On Win32, you can try throwing more threads and run into problems, likely more with Windows than Delphi. I tested with 1,000 threads without any issue. Win64 could handle 50,000 threads without failing.
  13. That is how I feel for most things in the IOUtils unit! It is just bad implementations all around.
  14. L’entreprise Tixeo édite des logiciels de visioconférence sécurisées depuis 2003. Ses solutions, dont la qualité et la fiabilité sont reconnues mondialement, apportent satisfaction à des clients exigeants dans des domaines sensibles tels que la banque, l’aéronautique et le militaire. Les solutions de Tixeo ont obtenu un visa de sécurité de l’ANSSI. L’innovation est au cœur des produits de l’entreprise, avec un seul objectif : fournir des outils toujours meilleurs pour communiquer et collaborer à distance de façon sécurisée. Chez Tixeo, vous avez l’opportunité de rejoindre une équipe dynamique qui propose une solution haut de gamme dans le Cloud et On-premises. www.tixeo.com En rejoignant l’équipe de Tixeo, vous pourrez : Adhérer aux méthodologies agiles (SCRUM) Intervenir à chaque stade du développement et sur tous les composants (Full stack) Participer à la conception de l’architecture technique Écrire du code de qualité, vérifié par des tests appropriés (unitaires, intégration, performance) en Intégration Continue Mettre fréquemment votre code en production Poste en télétravail 100%. L’entreprise Tixeo est basée à Montpellier. Mode de travail : Visioconférence en continu avec les équipes de Tixeo. Rencontre en présentiel de tous les employés au siège à Montpellier une fois pas trimestre (déplacements et hébergements pris en charge). Salaire compétitif. Compétences recherchées : Minimum de 5 ans d’expérience en développement logiciel Vous portez attention aux détails et savez faire preuve d’autonomie Capacité d’analyse et correction de bugs difficiles Notions de sécurité informatique Bon niveau d’anglais Technologies, environnements et méthodologies : Pascal / C / C++ - Delphi, Git - Agile, SCRUM, TDD, CI Bonus : Connaissances approfondies en sécurité informatique Maîtrise des protocoles HTTP/HTTPS, TCP/UDP Connaissance des codecs et protocoles de voix et vidéo sur IP (WebRTC / SIP / H.323) contact: jobs[at]tixeo.com
  15. David Heffernan

    ICS v8.64 can't compile on Delphi 7

    I have a case in my test suite that checks compilation for all supported delphi versions of all code that I ship to clients. Pretty easy to set up.
  16. I have a collection of Syslog and Windows Event Log Utilities. All 100% developed in Delphi. http://www.allthingssyslog.com/ They are intended for use in testing. Unfortunately I can't put links to the actual tool pages as the site is a single page React Web Application at the moment. Will convert to ASP .Net when I get hosting sorted out. There is a menu in the top right corner of the page which is easy enough to navigate. Go to the Downloads to access the following: 1) The Simulator. This allows you to send test messages to your Syslog server, Log Management system or whatever. Messages can be edited, sent on demand, sent in repeating batches etc. 2) The Windows Event Log Converter. This utility will read entries in a Windows Event Log and forward them to a Syslog Server. There is also a YouTube channel with tutorials on using these utilities here: https://www.youtube.com/channel/UCg97aUZMTKlqMNA_Qxc8wWA Most recently I updated the UIs to make them multi lingual. I just hope google translate didn't give me the German/French/Italian/Dutch equivalent of Engrish. Go to the Utilities page for some extra stuff 1) A basic test Syslog Receiver. It takes messages on UDP and dumps them to a file. Noting special, not even good performance, but useful for demoing basic principles in videos. 2) A Windows Event Log Writer. Works pretty much the same as the simulator, but instead of sending messages to a Syslog receiver, It dumps them in a local Event Log. Using batches it can write up to 12k logs/sec into a Windows Even Log. I originally started writing this stuff to do dev testing on a log management system, but the company was never interested in building out a serious testing architecture. After I left I kept working on them. I still find them useful on occasion, maybe others will too.
  17. Rüdiger Paschotta

    Remote control of Word no longer working

    I finally found the solution for the problem with "interface not supported" when trying to remote-control Word: I had compiled my program for the 32-bit Windows platform, while Office 365 is a 64-bit version. Going back to a 64-bit version, everything worked again! When previously changing the platform, I could not anticipate that side effect. That nasty problem has taken hours to be resolved. I first tried to find some library for directly manipulating Word files, but could not find anything which looked reasonable. It would not only have to work theoretically, but be documented such that one can use it without wasting a lot of time. Here, many packages fail. I also previously tried a "repair" of my Office installation, which did not solve the problem but apparently uninstalled Microsoft Teams.
  18. Stéphane Wierzbicki

    Your RAD Studio 10.4 Sydney issues

    This is really insane that we still need to wait for an IDE fixe pack... Embarcadero, what the hell are you doing... Waiting now for Andreas to fix this....
  19. The new PngComponents version 1.6.0 with Delphi 10.4 Sydney support is available on GitHub: https://github.com/UweRaabe/PngComponents While the version delivered with GetIt is still on 1.4.0, the above version f.i. supports the new feature of linking to a TPngImageList by ImageName in addition to ImageIndex.
  20. Hi Developers, Deleaker was created in 2006, and is been support Visual Studio from the very first release. Now it's time to find leaks in Delphi and C++ Builder! Deleaker finds memory leaks, leaks of GDI and USER32 resources, handles and many others. Deleaker fully integrates with RAD Studio. Here the official announcement: https://www.deleaker.com/blog/2019/03/11/integration-with-rad-studio/ Let's look how it works! Download Deleaker and launch it. Now you can select versions of RAD Studio you want Deleaker to integrate with. Of course, RAD Studio Rio 10.3 is supported: Deleaker is installed, let's launch Delphi: Great, Deleaker is here: Let's add some leaks: Start debugging, click the button, exit. Deleaker is taking a snapshot: Two leaks are shown as expected. It's easy to navigate to source of a leak: Happy coding!