Jump to content


  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by timfrost

  1. timfrost

    Prevent Delphi IDE Multiple Instance

    Yes, it would work well for me. But it is not clear from your website or Github page exactly what I would need to download or purchase to get just this IDE functionality. I do not need any of the other tools or utilities that I can read about there.
  2. timfrost

    Limit 10.4.2 IDE to one instance

    If you downloaded GExperts.CHM from somewhere yourself, it may be 'blocked'. Right-click in Explorer and unblock it in Properties.
  3. timfrost

    sending text between applications (10)

    Grijjy have a wrapper for the ZeroMQ Majordomo protocol at https://github.com/grijjy/DelphiZeroMQ. There's a lot of reading to do if you want to learn all about ZeroMQ, but Grijjy supply a simple Client, Worker and Broker to start from, which work 'out-of-the-box'. The advantage to using a Broker app is that you do not have to sniff around to discover everyone's IP address; each party registers their name and role with the broker and then the broker ensures that messages can be sent to and from each named entity. You can also combine this with Grijjy's 'protocol buffers' to send almost any type of data that the sender and recipient apps agree upon. I have started to explore this myself and have not yet discovered any major snags.
  4. timfrost


    I am looking for someone who still uses MsgConnect, which was an Eldos product before it was dropped immediately after NSoftware acquired it. I would like to know of anyone who has successfully tried it with Delphi11. We use it in a service application which, when built in D11.1 with suitable changes to the .INC file, silently terminates after receiving and replying to the first message sent to it. Debugging the service is tricky, and the exception occurs deep inside the library code. Before I abandon MsgConnect and look for alternatives, it would be good to know if anyone else has found and fixed a similar issue.
  5. timfrost

    NT API components

    Look at MiTeC System Information Component Suite (https://www.mitec.cz/msics.html). Includes both AD and WMI components at a lot else besides.
  6. timfrost

    auto code formatting

    My principal IDE is RAD Studio (for Delphi) but unfortunately I also have to use Visual Studio a bit. I cannot stand the way VS moves my code around or adjusts my spacing while I am typing it. It is a most unhelpful and distracting feature.
  7. timfrost

    PDF Library

    Last year I might have suggested QuickPDF, formerly from Debenu, now from Foxit. But Foxit announced its EOL a few months ago. I also use the PDFIUM wrapper from https://winsoft.sk/pdfium.htm, but this requires the Google PDFIUM DLL separate from your application. They have a demo, and a PDF merge example.
  8. timfrost

    Delphi 11.1 is available

    The Docwiki links for new features and fixes in 11.1 are not working (here).
  9. timfrost

    Formatting inline var

    The GExperts formatter seems to do what you ask, here. I have never used the one that comes in the IDE, though.
  10. timfrost

    Docx (RTF) to PDF convert

    No need to print from Word, you can automate it to open and 'save as PDF'. And you can do the same with Libre Office, for MS and ODT formats, and there is a library available from https://www.winsoft.sk/libre.htm which can help with this. If installing Libre is as much of a problem for you as installing Word, there is also a library available from https://delphihtmlcomponents.com/office.html which can read Word Documents and can also write PDF, via HTML.
  11. Some of the comments to https://softwareengineering.stackexchange.com/questions/196706/creating-a-coding-standards-document may be relevant. I read into several of them that the best advice is often, "don't try this".
  12. timfrost

    Delphi 5 - VirtualTreeView

  13. timfrost

    Delphi 5 - VirtualTreeView

    A quick google tells me that VTV 5 dropped support for Delphi 5 and 6, and that the last VTV 4 was 4.8.7, but I have no idea whether this is accurate I have downloads only back to VTV 6.3.
  14. timfrost

    ISO8901: Week numbers and year

    The functions in system.dateutils claim to be ISO8601 compliant. Are you saying that they return the wrong results? WeekOfTheYear has an overload which sets the year as well as returning the week
  15. If your goal is to achieve consistency between local and UTC times which are milliseconds apart, you should start with the UTC time, not the local time. Get the UTC time first. Then use a library such as https://github.com/pavkam/tzdb to derive the local time from it, for the location you require, using the IATA database. If the UTC time happened to be 01:59:59.998 on a changeover day scheduled at 2am, then this library will return the correct local time for this UTC time and location, even if you call it 5ms later. The library also has options to select how you want to handle the edge cases if for some reason you have to start, as in your examples, from the local time. Some days, a local time may occur twice or not at all. There may be other ways to do this without an external library, but using the TZDB gives you flexibility to handle different time zones and DST rules. The fact that you ask for millisecond consistency implies that you may require this extra capability.
  16. Regex Buddy (https://www.regexbuddy.com) is a useful resource for learning and testing Regex. There is a money-back guarantee in case it does not float your boat.
  17. timfrost

    Library to get user, computer info

    For Windows, MiTeC System Information Component Suite can get every hardware and software detail you can think of, and more; there is also a trial version available. https://www.mitec.cz/msics.html
  18. timfrost

    simple PDF editing need

    Take a look at https://www.winsoft.sk/pdfium.htm. It's an inexpensive easy-to-use wrapper for PDFIUM. There are trials and demos at that link.
  19. timfrost

    Patch for Delphi 11 Alexandria available

    There is indeed a 'do not show again' checkbox. But normally when I see this dialog it is because I have failed to spot the icon in the toolbar and accidentally opened another IDE instance. So it would be nice to have a 'cancel start-up' option as well!
  20. timfrost

    Moving from Per Monitor V1 to V2

    I would suggest that before you claim to support pmv2 you should add a second monitor which you can run at a different DPI, and test everything. This is the best way to be confident that your users will find no surprises in your software. But even then if the user setup differs from yours, it may not be enough.
  21. I don't know the answer to that specific question. I know that you cannot run multiple threads rendering (different) PDFs to image formats simultaneously, which is why I use Foxit (formerly Debenu) QuickPDF Library for this purpose, where you can safely use multiple instances of the PDFLibrary class in the same process. Google 'PDFIUM multithread' for more information (some of it inconsistent or not recent). When single threading, we can use either library, and we find that very occasionally some (usually CJK) PDFs, which in general our users do not have control over, do not render with one and do with the other. Typically PDFIUM will report failures or unsupported PDF features, whereas QPDF is slightly more likely than PDFIUM to mis-render these edge cases.
  22. But anything based on PDFIUM has the limitation of single threading only. Which may not matter if you have a user interactively tweaking annotations and images, but it does to the applications I deal with.
  23. timfrost

    DevExpress PDF Viewer

    There is also the excellent PDFIUM DLL wrapper from Winsoft: https://www.winsoft.sk/pdfium.htm. You would not need to ship the PDFIUM DLL with every update of your software, though it does get updated from time to time. The viewer demo builds to 2.9MB, but the demo is a full viewer with scaling, rotation, printing, rendering etc.
  24. In a MadExcept bugreport there is nothing to stop you adding customer identification or licence details in the headings. No need for the customer to manually fill in anything. There are examples in the MadExcept documentation on how to do this in your application which generates the report.
  25. And mine too. North Star Horizon in a wooden case. I still have it.