Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 01/08/24 in all areas

  1. Roger Cigol

    Club 12

    Clipboard history was removed. The argument (probably valid) was that the Windows clipboard history does the job just as well (or better). Use left hand "Windows icon" key combined with "V" to bring up clipboard history.
  2. How much he earns from the Android app is not relevant. How much he earns in total is relevant. See: https://www.embarcadero.com/products/delphi/starter/faq Yes, subject to the restrictions summarize below and stated in the License Agreement. If you're an employee of a small company or organization with revenue up to $5,000 per year, you can use the Community Edition. Once the company's total revenue reaches US $5,000 per year or your team expands to more than 5 developers, you must buy an unrestricted paid commercial license. Also there are some restrictions if you already have other Delphi versions. the last thing anyone would want is receiving invoice for regular version, because they used CE edition for writing Android part of they regular Windows app developed in Delphi. Verifying that CE could be used in particular scenario is the best option.
  3. Stefan Glienke

    suggestion arm v8 cpu

    FWIW there is already this issue with 171 upvotes - it explicitly mentions Raspi but that would be a start. Given that Allen Bauer already had some kind of prototype ready in 2015 it's a shame Embarcadero never moved that forward.
  4. rvk

    Delphi 12 VCL painting differs through RDP

    https://docwiki.embarcadero.com/RADStudio/Alexandria/en/Double-buffering_and_Remote_Connections
  5. Stefan Glienke

    Club 12

    Reported as RSP-44066
  6. Any thread/process may create the file but must be prepared to handle "file already exists" error if another thread/process is creating the file one microsecond before. In that context, file already exists is not an error! Then every thread/process lock the file BEFORE writing or reading anything and unlock right after. Now the question is where to lock. File locking allow to lock one or more bytes, and even lock a non existent part of the file. There are several possibilities. The most important is that every thread/process must follow the same rule. 1) Lock the whole file and way past the end of file. 2) Lock a single bytes or a few bytes, usually the the file header, if any. 3) Lock from the byte at end of file for a large block. 4) Lock a single byte far away from end of file, at a fixed place that will never be reached. 5) Another file, maybe empty, is used to place the locks. Solution 1 is easy and the file is completely locked for everything except the one that placed the lock. This include any editor or even the "type" or "copy" commands of the command interpreter. This may be desirable... or not. Solution 2 is frequently used by database manager. Solution 3 will allow reading from a thread/process for the existing part of the file while another is appending to the file. Solution 4 is interesting in some cases because any reader/writer will be able to read/write to the file as usual but all aware of the locking will correctly write to the file without overwriting anything. This may be desirable... or not. Solution 5 is interesting because the file is never locked by thread/process aware of the locking scheme will safely read/write the file. There are probably other locking schemes. The developer has to carefully think about his intent and use case. And of course must fully understand how locking files works. The file locking is the base of multi user applications and exists almost since the beginning of computer software and databases. There are a lot of articles and books published on the subject.
  7. You know that Embarcadero is barely monitoring this forum, don't you? If you want your rant being heard better contact a PM or sales representative. What do you think is done during beta tests? The actual number of installation tests most likely exceeds your request of 20 or 30 by magnitude. Unfortunately there are still some scenarios not covered by the testers. The best way to get these covered is to analyze the cause for the error and file a QP report with that information. Thinking about past events with a similar error: Did you by any chance make use of the "Remove unused paths" action in the library editor?
  8. I use LockFile or LockFileEx from Windows API.
  9. dwrbudr

    Delphi 12 VCL painting differs through RDP

    In Delphi 12 EMB has changed the way DoubleBuffered works in DRP session and added DoubleBufferedMode property. So inspect the source/documentation on that or just play with those properties.
  10. dummzeuch

    Delphi 12 VCL painting differs through RDP

    Didn't Embarcadero announce that they "improved the experience" of the IDE and Delphi programs when run in an RDP session? I'm not sure which Delphi version this was, but I think it wasn't 12. Maybe 11?
  11. Stefan Glienke

    Introducing Delphi Uses Helper

    Introducing "Uses Helper" - some little but incredibly helpful IDE plugin https://delphisorcery.blogspot.com/2021/03/introducing-delphi-uses-helper.html
  12. The bug is in your code - not all binary data can cleanly be put in a string directly. The output of the hash function is in TBytes and the encode function can take TBytes as input. That string() cast you inserted between them is causing issues depending on the binary hash value.
  13. Joseph MItzen

    Font selection for coding

    Well, some of us like to feel fancy when we code!
×