Jump to content

Fred Ahrens

Members
  • Content Count

    32
  • Joined

  • Last visited

  • Days Won

    2

Everything posted by Fred Ahrens

  1. Fred Ahrens

    Hyper-V server as host for 3 VMS

    You can control the client via command line (see https://www.virtualhere.com/client_api). This allows you to create build scripts that temporarily activate the dongle on the client system only when it's needed for signing your files and deactivating it after when the script finishes.
  2. Fred Ahrens

    Hyper-V server as host for 3 VMS

    +1 for Proxmox. For a very long time I had the impression, it's an "enthusiasts platform for virtualization". One of our customers "forced" us to test our software under Proxmox and 1 month later most of our bare metal machines and VMs were migrated to Proxmox VMs and containers. Couldn't be happier too.
  3. Fred Ahrens

    Hyper-V server as host for 3 VMS

    For using the code signing dongles (or any other USB device) I recommend VirtualHere. Install the VirtualHere server in the host machine and your USB dongles/devices connected to the host can be accessed via a simple client within your VMs. It's not free but not expensive and just works. Meanwhile we switched from Hyper-V to Proxmox as it has built-in USB-pass-through and other features missing in Hyper-V. But main reason was: there is actually no longer a free stand-alone Hyper-V server as it got discontinued by Microsoft.
  4. Fred Ahrens

    What new features would you like to see in Delphi 13?

    I don't need any new features. I just need that the existing features work as intended. And there are many areas where existing features need to be made usable again (e.g. refactoring, code formatting, HighDPI). OK, one new feature would be nice: compiling for Raspberry Pi. But fixing the existing features needs to be done first.
  5. For me it's the lack of communication. Errors happen, but at a certain stage they should start to communicate about the error and give some advice about expected timeframe for fixing the problem, possible workarounds and so on. I really don't care (that much) how long this takes - but it would be nice to get some regular updates about the progress made. We are now in a situation where we have to review our development environment and make it as independent as possible from the availability of Embarcadero servers. In result we have to stop using GetIt, and other services may follow.
  6. Fred Ahrens

    What is the benefit of sorting the Uses clause?

    Sorting units by name is dangerous. There are some units that need to be added at the end of the list, if they overwrite some behavior's of objects and functions of other units above in the list. There are other units that need to be placed on top of the list if they do some special initialization that needs to be done in the app as soon as possible, before any other parts of the app start to initialize.
  7. Fred Ahrens

    Use case or if else ?

    I prefer Alternative 1 but I wouldn't use "else". Using "else" might slightly improve performance in some cases, but without the "else" I think the code can be parsed better during code reviews (gets closer to the readability of the version using the case statement). if aMessageType = 'EXPREG' then DecodeExportReg(vDoc, aCdn, aRequestCorrelation, aMessageText); if aMessageType = 'EXPACC' then DecodeExportAcc(vDoc, aCdn, aRequestCorrelation, aMessageText); if aMessageType = 'EXPERR' then DecodeExportErr(vDoc, aCdn, aRequestCorrelation, aMessageText); if aMessageType = 'EXPREL' then DecodeExportRel(vDoc, aCdn, aRequestCorrelation, aMessageText); if aMessageType = 'EXPREF' then DecodeExportRef(vDoc, aCdn, aRequestCorrelation, aMessageText); if aMessageType = 'EXPREQ' then DecodeExportReq(vDoc, aCdn, aRequestCorrelation, aMessageText); if aMessageType = 'EXPINF' then DecodeExportInf(vDoc, aCdn, aRequestCorrelation, aMessageText); if aMessageType = 'EXPREJ' then DecodeExportRej(vDoc, aCdn, aRequestCorrelation, aMessageText); if aMessageType = 'EXPCLA' then DecodeExportCla(vDoc, aCdn, aRequestCorrelation, aMessageText); if aMessageType = 'EXPCON' then DecodeExportCon(vDoc, aCdn, aRequestCorrelation, aMessageText); if aMessageType = 'EXPAME' then DecodeExportAme(vDoc, aCdn, aRequestCorrelation, aMessageText); if aMessageType = 'EXPIRJ' then DecodeExportIrj(vDoc, aCdn, aRequestCorrelation, aMessageText); if aMessageType = 'EXPARJ' then DecodeExportArj(vDoc, aCdn, aRequestCorrelation, aMessageText); if aMessageType = 'EXPHRT' then DecodeExportHrt(vDoc, aCdn, aRequestCorrelation, aMessageText); OT: just learned about the existence of IndexStr.
  8. Fred Ahrens

    Delphi 11.3 is available now!

    This looks like a rounding problem in the function that calculates the toolbar sections. As a workaround you can try to move each section of the toolbar to the right while leaving gaps with some pixels width between all sections. This should avoid the overlapping of sections due to the calculation error and prevent moving toolbar sections to the next free line on the toolbar. (not tested just guessed)
  9. Fred Ahrens

    Conversion between Markdown and HTML

    For HTML to MD conversion (and from/to other formats) have a look at https://pandoc.org/
  10. Fred Ahrens

    Conversion between Markdown and HTML

    If you want to convert .md files, you are looking for a "Markdown" converter - not "Markup". The source code at https://github.com/grahamegrieve/delphi-markdown might be exactly what you are looking for.
  11. Fred Ahrens

    Enterprise Coderage 2022

    Had the same problem. After disabling the ad blocker the Submit button appeared.
  12. Fred Ahrens

    DL a file from the web

    uses Vcl.ExtActns; procedure Download(URL: String; FileName: String); var DownloadAction: TDownloadUrl; begin DownloadAction := TDownloadUrl.Create(nil); DownloadAction.Filename:=FileName; DownloadAction.URL:=URL; DownloadAction.Execute; DownloadAction.Free; end; But no error handling at all.
  13. @w0wbagger you should read their license carefully. After the last update of the license the components were limited to development and inhouse use only. Edited: I was wrong about inhouse solutions. Those are covered by the license.
  14. Fred Ahrens

    simple PDF editing need

    Sending it by fax means you have to print it first. Your printer driver may offer a watermark function.
  15. Fred Ahrens

    Where are the FD Enterprise Connectors hiding?

    Wow. We started using CDATA connectors already two years before Embarcadero started bundling it with some of the Delphi SKUs. I wasn't aware that license conditions have changed. I just checked and compared with older EULAs shown during the CDATA component installation and there wasn't a limitation to inhouse distribution only. The 2018 version of the EULA was more similar to typical other component packages - only the typical restrictions did apply. With this license change we'll have to stop using CDATA components. I guess we could afford to pay the costs for upgrading our existing licenses and bring them back to a royalty-free distribution model. Finally it would be a stupid investment as we don't know what other changes might be introduced in the licenses through the backdoor and might render our investment useless (again). I'll be happier with spending that money at other component developers who have a more developer-friendly business model.
  16. Fred Ahrens

    Where are the FD Enterprise Connectors hiding?

    The drivers are available for download at https://www.cdata.com/drivers/. You will need to choose the driver you want to download. At the top of the next page you will need to choose "Firedac" from the toolbar. On the next page click on "Download" and on the final page "Download Full". The "Download Full" button looks disabled but is working and downloads the licensed version of the driver. You will need your product key (it's the same for all CData drivers) for starting the download.
  17. Fred Ahrens

    D10.4.2 weirdness since recent Win 10 update

    Sometimes the source of such problems isn't obvious at all. A while ago while having similar problems for a long time I observed in the Events window in the IDE when starting the app, a dll belonging to my Razer headset got injected into the app and caused a lot of strange behavior. After uninstalling the headset's driver, everything went back to normal. Whenever I have similar problems, first I disable all non-essential programs in Task Manager > Startup. Disabling Windows Updates isn't a good idea. I'm not talking here about security and 0day exploits. Assuming that most developers have the Windows Update set to normal settings brings you to the same level as other developers and will give you a better chance to find somebody who might have similar problems like you and who might already have a solution.
  18. Fred Ahrens

    Fonts & ligatures

    My brain would detect this as an error while reading the code. I always expect to see in the source code the characters I did type and not the characters the IDE "thinks" might look better.
  19. For testing I uploaded your file to our own domain and still get the error while downloading it from there. So the source of the download doesn't seem to be the source of the problem. It seems to be a problem with the digital signature. It may help to add a second signature using sha1 digest algorithm. It won't hurt and will give you also some compatibility with downloading the file on older Windows versions. This will also change the checksum of your file and provides a good chance that it won't be detected again that has been flagged as critical due to unknown reasons. Some years ago we also used Comodo certificates. When we had similar problems it helped just to sign and upload the affected file again. Meanwhile we switched to DigiCert signatures and those problems went away. This also lowered false positive detection of our binaries by some virus scanners.
  20. I'm just guessing: It could be a problem that the file isn't downloaded from your domain but from storage.googleapis.com. At the end whenever another identified malware was downloaded via storage.googleapis.com your downloads are flagged as well as potential malware - you just don't have this under control as anybody can use this domain for downloads. I would try moving the downloads to your own domain.
  21. Fred Ahrens

    modbus

    Some years ago we needed to implement a Modbus interface for reading data from an automation system. After trying several libraries we ended up using http://www.ozm.cz/ivobauer/modlink/ It's not free but worth the investment.
  22. Fred Ahrens

    HTML Library limited offer

    Happy Birthday.
  23. Fred Ahrens

    SSL certificate for VCL Application Exe

    You'll need a code signing certificate - SSL certificates can't be used for code signing. Developers can get a discounted code signing certificate from Digicert via this link -> https://www.digicert.com/friends/sysdev/
  24. Fred Ahrens

    IDE Fix pack for Rio

    Deep in the release notes I have seen some comments regarding the implementation of some of Andreas' patches directly into the official release. But I couldn't find any further info if this is the full feature set of the Fix Pack or only a few selected patches.
  25. You may need to upgrade your Comodo digital signatures. As far as I remember Comodo signatures are considered unsafe now (see: https://bravatek.com/comodo-certificate-hack-it-gets-worse/)
×