Jump to content

DelphiUdIT

Members
  • Content Count

    128
  • Joined

  • Last visited

  • Days Won

    2

DelphiUdIT last won the day on August 23 2022

DelphiUdIT had the most liked content!

Community Reputation

34 Excellent

Technical Information

  • Delphi-Version
    Delphi 11 Alexandria

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. DelphiUdIT

    Community license

    I also don't care about the CE, I have an Enterprise license and it wouldn't make sense to use a CE anyway. I use Delphi to "make money", why should I expose myself to legal issues? That's why I don't let anyone around me use the CE, even if it would be possible. It is not and will never be a problem to use software (obviously legally owned and in countries not subject to restrictions) on industrial machines produced by me. So i can use it without any issue in USA, in EU, and anywhere I legally sell (or export) my line and work on (generally start up / maintenance). I certainly don't come to America to steal the work of native developers 😉 Bye
  2. I always use port 465 (implicit TLS) and I must do IdSMTP1.Connect; IdSMTP1.Authenticate; if IdSMTP1.DidAuthenticate then begin IdSMTP1.Send(IdMessage1); end; to avoid any problem. If the simple and short way is working with port 587 there is not need to change. Bye
  3. Try the @David Schwartz suggestion (this is the official library of Indy: https://github.com/IndySockets/OpenSSL-Binaries) and also the following. You use port 465, (implicit TLS) so is better to put: IdSMTP1.UseTLS := utUseImplicitTLS; And I use that: IdSMTP1.Connect; IdSMTP1.Authenticate; if IdSMTP1.DidAuthenticate then begin IdSMTP1.Send(IdMessage1); end; Hope this help you. Bye
  4. DelphiUdIT

    Community license

    @David Schwartz I don't understand why you get so excited and I didn't think my post could offend anyone. I live in Italy where I mainly work, even if I often travel around the world (in the next months I will come to California). But this is absolutely indifferent to what I said. I am not an employee and I have no employees or collaborators in the area near me and the only reference I have made in this whole speech is what I quoted and commented in the post (I am re-formulating my answer more clearly): "a person who connects to a NON-PUBLIC network does not necessarily have to be an employee / collaborator or have an economic relationship with the owner of the network" This I think (and in my case that I described is). But to avoid "legal" trouble I prevented Delphi or C++ CE from being used on my network, to my reluctance. And this is because I have repeatedly heard EMBT (see also in previous posts) discussing the use of a CE license within an organization's network. I don't think it's right or wrong. I only "detected" the possible critical issues and avoided any legal problems. Bye
  5. DelphiUdIT

    Community license

    This discourse is absolutely misleading and meaningless. This is the problem with the CE license. I report my case, i have a subscription active and I'm not licensed to use a CE: I have a very wide "internet" band available and I have decided to share this resource in the neighborhood with students and other people who don't have economic possibilities (free of course). Does this mean that whoever connects to my network works for me? What if some students use the CE? That's why I asked the students not to use CE (one of them actually wanted to learn Delphi but I directed him to Lazarus). This is reality, not fantasy and many structures leave accessibility to the resources they have without there having to be an economic activity behind it. Surely the Community Edition has its advantages, but the legal aspect is so stringent that those who want to approach this tool prefer other ways. Bye
  6. DelphiUdIT

    Community license

    😍PASCAL is the best programming language in the world 😍 but Delphi CE is not the right product if you want to distribute your projects freely. Behind Delphi there is a structure (now is Embarcadero / IDERA) which is not "non-profit" and which rightly must be rewarded for the work it does. Despite all the Delphi environment (overall) remains for me the best programming environment in Pascal and I use it as a job to be able to pay for it.
  7. DelphiUdIT

    Community license

    It's not important where or how many people use the compiled project or sources. Important thing is that you don't get more then $5000 of revenue and you don't use at work the RAD IDE. But this is not so simple to divide the revenue of your normal work from your use of RAD IDE. So, except for students that normally don't have a big revenue , is really difficult to use the CE edition according with license. Even just to test, try and look at the potential of the environment, it takes hundreds of hours of work with the IDE ... especially for an inexperienced user. Does Embarcadero consider this to be in compliance with the CE license? Quoted from https://docwiki.embarcadero.com/RADStudio/Alexandria/en/Community_Edition
  8. DelphiUdIT

    security with no access to the cmd.exe

    If you want to test, make a VM and try there, you can remove the "cmd.exe" and doing all know things with "gpedit" about that. SO you can try multiple solutions without damage your working PC. Bye
  9. DelphiUdIT

    Anyone know of an AVIF Image Decoder for Delphi?

    They only seems to have static library, not dll. There is a project for Lazarus / FPC that have this dll. This is the main branch: https://github.com/bgrabitmap/lazpaint The libraries "libavif.zip" (but i don't know nothing about them) are in subfolder "lazpaint/release/windows". Look at license of course. bye
  10. DelphiUdIT

    Anyone know of an AVIF Image Decoder for Delphi?

    ImageEn https://www.imageen.com/info/ support AVIF format. But is not free. Bye Edit: also you can extract c headers form there https://github.com/AOMediaCodec/libavif and convert to pascal wrappers.
  11. DelphiUdIT

    indy + LDAP

    There is a unit IdLdapV3 (under directory "lib\protocols"). Bye
  12. DelphiUdIT

    Looking for RpShell, RpTable, RpDefine, RpBase, RpSystem

    Fast Report have a converter from Rave file (*.rav) so you can convert the whole project to use it in Delphi 10.4 and Fast Report This is the link: https://www.fast-report.com/en/blog/show/frconverter-console-utility/
  13. This may be a bit OT, but if you want to avoid try .. and maybe even single windows api testing, you can use this feature (I've been using it for years): type TFMain = class(TForm) ....... protected procedure ErroriRunTimeNonGestiti(Sender: TObject; E: Exception); ....... end; procedure TFMain.ErroriRunTimeNonGestiti(Sender: TObject; E: Exception); begin .... do something; end; // In the form create event you can insert: Application.OnException := ErroriRunTimeNonGestiti; //Handle critical system errors (caused by the application) //By default critical errors are handled directly by Windows SetErrorMode(SEM_FAILCRITICALERRORS OR SEM_NOGPFAULTERRORBOX); Obviously this occurs if you don't use the try ... except.ì, i.e. for all the exceptions that your program generates and are not managed by it. The fact that you assume that an allocation error is reported to you by the operating system is misleading: if the memory allocation fails (at least for a string allocation) it is likely that your program will not notice it because it probably "won't run", the operating system will probably have notified you on screen that there is a "lack of resources" and will "hang".
  14. I haven't used FindFile... for many years. To list the files I suggest you to use the functions of the System.IOUtils unit, for example: var FileList1: TStringDynArray begin FileList1 := TDirectory.GetFiles('.\Images\', '*.*', TSearchOption.soAllDirectories); for var ix := Low(FileList1) to High(FileLis1t) do begin //Do Something //This catches the last modified time of the file //TFile.GetLastWriteTime(FileList1[ix]) //You can use the next line to check if the file really exists //FileExists(FileList1[ix])) end; //Clear the list SetLength(FileList1,0); end;
×