Jump to content

DelphiUdIT

Members
  • Content Count

    777
  • Joined

  • Last visited

  • Days Won

    17

Everything posted by DelphiUdIT

  1. The best thing you can do is debug the identical procedure write in Pascal and see how the compiler acts ...
  2. Look this, I think that the information on the NOW() function in Embarcadero page is old and no more accurate.: https://devblogs.microsoft.com/oldnewthing/20170921-00/?p=97057
  3. DelphiUdIT

    Using external chemistry libraries with Delphi

    I used Python in some projects (with P4D). I found the approach very simple and effective, except for the versioning of the various components. The version of Python, with all the various libraries that it brings with it (and if AI is used it is even worse) is quite critical. For now I still prefer the old method of "wrapping" the libraries from C in Pascal if available. However, I understand that using Python as a base can be in some cases (especially for those who do not have much experience) certainly the best choice.
  4. DelphiUdIT

    Using external chemistry libraries with Delphi

    If there are not any wrapper for Pascal ,you need to arm yourself with a lot of patience and start creating your wrappers from the definitions of the include (i.e. the files with the extension ".h"). It might not be an easy path, quite the opposite. However, there are some tools that can help you: https://github.com/neslib/Chet this utility allows you to create pascal wrappers from .h files. Keep in mind that what is done will not be perfect and you will have to get your hands on it. Also keep in mind that you can only use C includes, NOT C++. And you will also have to convert the code by hand. Another equally valid alternative is to pass the include file and ask some AI to convert it to Pascal ... Surely some forum user will be able to give you some further and better advice. This is an example of conversion of the Indigo APIs performed by the tool I proposed to you, you need to get your hands on it but it is a start. I wish you good work. Indigo.pas Indigo.h
  5. DelphiUdIT

    Guidance on FreeAndNil for Delphi noob

    Nothing ..... wrong replay
  6. DelphiUdIT

    powerthrottling Delphi

    Is not an issue, is the normal function of energy saving, like implemented in "balanced power" profile of a laptop PC. You have disable some of the "mechanism" that allow the system to moderate the use of the battery when the laptop is in battery mode, only for BDS.EXE application. If you prefer performance to energy saving is one of the right approach.
  7. I don't know where you catch those info. Like I told, my experience, I nevere see an executable (service or not service) stay live after "termination". In my developer machine runs only basic services, and i start and stop programmatically the services that I need project based (normally 4/5 services for 4 times per days). May be is a "design basis" by Windows for some kinds of executables or (more likely) some thread or method of the executable is "hanging". 20 seconds is historically the standard timeout within which a closing service is killed by the system, if it does not terminate itself (I remember a value like "KillServiceTimeout" in the registry that keeps the default time, but it could be called something different).
  8. @sp0987 And, what are your needs ? If the service maintain the zombies for some seconds ... it is so, but really I never see this. When I stop a service the EXE disappear from task manager (of course, if the application has no pending things like threads waiting). If you want that the same exe doesn't run more then one time, use a mutex at the start of the application: var hMutex: THandle; // Creates a unique synchronized object in the operating system hMutex:=CreateMutex(Nil,False,'Global\MyApplication'); // Checks that the object is not already 'owned' by some other process (program instance), // in which case exits the program if (WaitForSingleObject(hMutex,0) = wait_TimeOut) then exitprocess(255);
  9. SSL certificate of this site is expired ...
  10. DelphiUdIT

    Default() and subrange types

    For each data whose value I need to know for sure before using it, I perform an assignment operation of a certain value at the creation of any "parent" or at the creation of the application. I had some problems with the "default" in the past, so I equipped myself and I do it like this. I know it's probably excessive, but so far I haven't had any issues.
  11. DelphiUdIT

    New Book Delphi Quality-Driven Development

    For your knowledge, I try to buy e-copy from your link (Italy, via CC) but the payment was refused (seller: DP Info).
  12. DelphiUdIT

    Documentation links on indyproject.org not working

    Yes, that link is working, when you unzip it with Windows Explorer it gives an error. With 7-ZIP it works right. Other links from Indy Wiki are not fully functional.
  13. DelphiUdIT

    Documentation links on indyproject.org not working

    oops ---
  14. DelphiUdIT

    Documentation links on indyproject.org not working

    All links seem not full working. Look this, extract with 7-ZIP (Explorer give me an error): https://github.com/IndySockets/Indy/files/7782730/IndyDocs_10.1.5.0_HtmlHelp.zip
  15. DelphiUdIT

    Documentation links on indyproject.org not working

    Indy Wiki is here, and is working: https://github.com/IndySockets/Indy/wiki And if you have Rad Studio installed you have the offline documentation (Help/Third-Party Help/Indy Library Help)
  16. What is the target of your application ?
  17. This is available on OpenSSL 1.0.2u, the last SSL available that works on Indy bundle with Rad Studio. You are using SSLv3 this is deprecated and should not be used. YOU MUST USE TLSv1.2. Set IOHandler to use TLSv1.2 (in the options): SSLVersion := [sslvTLSv1_2]
  18. In Indy, the valid chipers type accepted by a server connection is setting through the TIdSSLOpenIOHnadlerServer.Options.ChiperList property, for example: //For TLSv1.2 handshake CipherList := '!EXPORT:!LOW:!aNULL:!eNULL:!RC4:!ADK:!3DES:!DES:!MD5:!PSK:!SRP:!CAMELLIA'+ ':ECDHE-RSA-AES128-GCM-SHA256'+ ':ECDHE-RSA-AES256-GCM-SHA384'+ ':ECDHE-RSA-CHACHA20-POLY1305'+ ':ECDHE-ARIA256-GCM-SHA384'+ ':ECDHE-ARIA128-GCM-SHA256'+ //Weak but used in old products ':ECDHE-RSA-AES256-SHA384'; Search in the property of DataSnap components for IOSSLHandler and set this property. This is correlated to "certifcate file" and "certificate private key" (CertFIle and CertKey property of the Handler).
  19. You can try also with https://prog.olsztyn.pl/paslibvlc/ It has the ability to play stream audio and video, but you need VLC installed on system.
  20. DelphiUdIT

    Could not load OpenSSL library.

    But not this time .... Datasnap is working with Indy REPO too .... there are some things to do, expecially one ... was missing from my (sparse) instructions and I never had any issue (never used DataSnap). These three lines must also be copied into the "library path" and DataSnap will "start" working again. Start from previous link posted.
  21. DelphiUdIT

    Could not load OpenSSL library.

    I think was better to create a new topic under "Indy" section. Your issue has nothng to do with this topic. But, if you install new Indy from official repo, you have to build it with all the modifications about the packages and you must rebuild also the optional components, wich sources are distribuited with Rad Studio and not present in Indy REPO. Read this for more information: Take care that replace the Indy bundle with Indy REPO can invalidate some components (from Embarcadero and from third parties). If you have third parties sources you can recompile and rebuild them. EMS components and Datasnap use Indy under the hood ans so is possible that they don't work with new version of Indy.
  22. But they produce SSD too, and the test that they made were about their SSD. I don't think they have any interest in "cheating" on the results. It could be that technology will move the "hand" one way or the other over time.
  23. https://www.kingston.com/it/blog/pc-performance/what-is-ram-disk
  24. It could be that an alien has taken over his body... or his account....
  25. DelphiUdIT

    Sqlite Delphi 12 linker error

    I really don't know if this can help. but you have tried to do "REVERT" action:
×