

DelphiUdIT
Members-
Content Count
777 -
Joined
-
Last visited
-
Days Won
17
Everything posted by DelphiUdIT
-
SetLength of TArray<double> in ASM get strange result
DelphiUdIT replied to wqmeng's topic in RTL and Delphi Object Pascal
The best thing you can do is debug the identical procedure write in Pascal and see how the compiler acts ... -
The status of "System.SysUtils.Now" timer resolution & accuracy
DelphiUdIT replied to Rollo62's topic in RTL and Delphi Object Pascal
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 -
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.
-
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
-
Guidance on FreeAndNil for Delphi noob
DelphiUdIT replied to Paul Dardeau's topic in RTL and Delphi Object Pascal
Nothing ..... wrong replay -
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.
-
EXE(.exe) still appears in process list, though the service destroyed.
DelphiUdIT replied to sp0987's topic in General Help
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). -
EXE(.exe) still appears in process list, though the service destroyed.
DelphiUdIT replied to sp0987's topic in General Help
@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); -
SSL certificate of this site is expired ...
-
Default() and subrange types
DelphiUdIT replied to Der schöne Günther's topic in RTL and Delphi Object Pascal
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. -
New Book Delphi Quality-Driven Development
DelphiUdIT replied to Dalija Prasnikar's topic in Tips / Blogs / Tutorials / Videos
For your knowledge, I try to buy e-copy from your link (Italy, via CC) but the payment was refused (seller: DP Info). -
Documentation links on indyproject.org not working
DelphiUdIT replied to alan finiti's topic in Indy
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. -
Documentation links on indyproject.org not working
DelphiUdIT replied to alan finiti's topic in Indy
oops --- -
Documentation links on indyproject.org not working
DelphiUdIT replied to alan finiti's topic in Indy
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 -
Documentation links on indyproject.org not working
DelphiUdIT replied to alan finiti's topic in Indy
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) -
REST Datasnap Server Accepting ECDH Ciphers
DelphiUdIT replied to MikeMon's topic in Network, Cloud and Web
What is the target of your application ? -
REST Datasnap Server Accepting ECDH Ciphers
DelphiUdIT replied to MikeMon's topic in Network, Cloud and Web
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] -
REST Datasnap Server Accepting ECDH Ciphers
DelphiUdIT replied to MikeMon's topic in Network, Cloud and Web
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). -
Does anyone know a delphi component that can play videos from a stream
DelphiUdIT replied to ToddFrankson's topic in VCL
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. -
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.
-
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.
-
Uses clauses and ide performance - does it make a difference?
DelphiUdIT replied to ventiseis's topic in RTL and Delphi Object Pascal
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. -
Uses clauses and ide performance - does it make a difference?
DelphiUdIT replied to ventiseis's topic in RTL and Delphi Object Pascal
https://www.kingston.com/it/blog/pc-performance/what-is-ram-disk -
Desktop App Development with Object Pascal
DelphiUdIT replied to PhilBoy's topic in Algorithms, Data Structures and Class Design
It could be that an alien has taken over his body... or his account....