Leaderboard
Popular Content
Showing content with the highest reputation on 12/30/20 in Posts
-
Delphi Event-based and Asynchronous Programming eBook complete version released
Dalija Prasnikar posted a topic in Tips / Blogs / Tutorials / Videos
Final version of my eBook Delphi Event-based and Asynchronous Programming has been released - 291 pages. You can find more information and purchase option at: https://dalija.prasnikar.info/delphiebap/index.html Thanks to all of you who purchased the incomplete pre-release version (179 pages) of my eBook! After a minor delay, the full version is here! You can download it through the same PDF/epub/mobi links that you have received earlier from FastSpring via email. The subject line of that email message was: "Your Delphi Event-based and Asynchronous Programming - Part I Delivery Information". If you have any problems, feel free to contact me via the contact form on my site. Thanks again! Happy Holidays to you all! -
Lookup for "localhost" takes 2 seconds
Angus Robertson replied to Der schöne Günther's topic in Network, Cloud and Web
If your PC supports IPv6, using localhost will try both IPv6 and IPv4, so best to have your server listening on both 127.0.0.1 and ::1. I recently changed the ICS TSimpleWebServer to do exactly this, for this reason. You may think you can ignore IPv6, but life is not that simple for developers. Angus -
Hi all. In this thread I will post new information about my expert called RAD & Installer. Please make new thread for your support questions and keep this thread for announcements only. Official website, more info and download: http://rad-installer.com/ About RAD & Installer is a RAD Studio expert for creating NSIS and Inno Setup installers. It integrates NSIS (Nullsoft Scriptable Install System) and Inno Setup with Embarcadero RAD Studio IDE (Delphi and C++ Builder) and allows you to create and build NSIS and Inno Setup projects right within RAD Studio getting all benefits of common integrated environment. Key Features New project types: NSIS Project and Inno Setup Project Full integration into RAD Studio IDE, supports: RAD Studio 2009 - 2010 RAD Studio XE - XE8 RAD Studio 10 Seattle, 10.1 Berlin, 10.2 Tokyo, 10.3 Rio, 10.4 Sydney Works in C++ Builder and Delphi - all Editions including Starter and Community! Build installers directly with other project types NSIS Project and Inno Setup Project Properties (with MSBuild) Syntax highlighting (coloring) Code Insight Code Completion Code Insight Parameter Hints Code Insight Code Hints Navigation Bars Complete linkage to the project group build process Quick jump from Messages window Code Insight Code Browsing (Ctrl + Click) Find Declaration support Hints and tips for writing scripts Code optimizations Opening script files (Go To file) Live Templates support Creating custom Live Templates Plug-ins recognition (* NSIS Project only) Full version control system support Dynamic help system Cross-version compatibility for all RAD Studio versions Based on MSBuild projects Easy to be integrated into many popular build (automation) systems: Jenkins, Maven, Apache Ant, Hudson, Gradle, FinalBuilder... Here is picture of the IDE editing the Inno Setup script: IDE I will post new versions announcements in this thread, but I want to keep it clean so I start with latest version only (I am sorry my previous thread with old changelog was somehow lost). Get the full changelog here: http://rad-installer.com/changelog.html Version 1.0.2.4 Release: 2020-10-12 We have completely reworked how IntelliSense in Inno Setup works. IntelliSense is now [Section] sensitive, so only items valid for speficic section are shown when Ctrl + Space is performed in that section. That reduces searching and increases speed of work. Cleared, updated and removed deprecated IntelliSense items for Keywords, Flag,s Parameters, Attributes, etc. Support for NSIS 3.06 and 3.06.1 (see changes Support for GI for NSIS 4.10.01 (Webka) and Graphical Installer Wizard 1.15.01 (see changes) IntelliSense items for are now reordered so the most used items are on the top of the list. The order of appearance in section: Inno Setup Pascal (like MsgBox(), ...) -> Classes (like TButton, ...) -> Procedures and Functions (User defined) -> Variables (Global, Local, Parameters) -> Members (#Symbols, types, consts) The order of appearance outside of [Code] section: Keywords (like AppName, ...) in [Setup] or Various constants (like {pf}, MB_OK, ...) [non-Setup] -> Flags (each section has its own set of them) -> Parameters (each section has its own set of them) -> Procedures and Functions (User defined) -> Variables (Global, Local, Parameters) -> Members (like #Symbols, ...) Fixed parsing warnings from Inno Setup ISCC compiler (especially if multiple colons were present in the warning) Support for Inno Setup 6.0.5 See changes) Support for Graphical Installer for Inno Setup 6.0.5 (Wonka) and Graphical Installer Wizard 1.15.01 (see changes) Fixed Inno Setup #preprocessors: added missing #redim, fixed typo in #ifexists Improved parsing variables in Inno Setup - up to 10 variables per line in var block Added missing IntelliSense items for NSIS + fixed few typos Inno Setup Compiler: corrected parsing warnings: Warning: A message named "..." has not been defined for the "..." language. Will use the English message from Default.isl. Warning: Message name "..." in "...path...to...ISL...file..." is not recognized by this version of Inno Setup. Ignoring. Inno Setup New Project templates now (again) use 'OutputDir=Output' so running the setup directly with Ctrl+F9 is working.
-
That is not my experience at all. I have a lot of projects with 10.4.1 including some large on (hundreds of thousands lines of code). I have no problem at all. Probably my coding style is in Embarcadero testing mainstream. I never rush to brand new features neither.
-
>The 3 ingredients required to expose the problems are: >1. Have an inline variable There I stopped reading. Most likely it will be fixed in the next release, but don't understand ppl. using this very new (not mature enough) feature, especially in 3rd party products. Use a decent library instead. (sorry)
-
Ahm. No? You can always get out and stick with one particular release for decades.
-
Lookup for "localhost" takes 2 seconds
Der schöne Günther replied to Der schöne Günther's topic in Network, Cloud and Web
That did the trick, thank you! Time taken for http://127.0.0.1: 28 ms Time taken for http://localhost/: 6 ms Time taken for http://localhost/: 5 ms I hope I did that binding stuff correctly: constructor TServerClientTest.Create(); var binding: TIdSocketHandle; begin inherited Create(); server := TIdHTTPServer.Create(nil); binding := server.Bindings.Add(); binding.Port := 80; binding.IPVersion := TIdIpVersion.Id_IPv4; binding.IP := '127.0.0.1'; binding := server.Bindings.Add(); binding.Port := 80; binding.IPVersion := TIdIPVersion.Id_IPv6; binding.IP := '::1'; server.OnCommandGet := handleServer; client := THTTPClient.Create(); end; -
LOL. I knew some response was bound to come in from someone. Sorry, but that is pretty weak as every piece of software has bugs. If you mentioned, say, RSP-9678 Delphi IDE is not DPI aware (from 2014 with 93 votes) then it may have been stronger. Or maybe RSP-17724 Linux x64 compiler produce very bloated code. Or perhaps this thread: Again, that's not an overly strong argument. How many one liner changes have you had to chase for hours on end, that may have not have revealed themselves as a problem for months? The key point here is tests. So you can put bugs in your code, or hair on your burgers which you serve, but they aren't allowed? I believe the major issue here is lack of tests. The main way to gain more confidence in the Delphi platform is by trumpeting, marketing, glorifying their major gains in testing over the last few years (which assumedly has been the case.) Likely one of their most dominant product features is backwards compatibility - that very valuable feature can only be assured with a huge amount of manual effort, or a very large amount of tests. Likely one of their most harshest points of criticism lately is new code is not up to the quality of old code. That also can and should be braced with an adequate amount of tests. Finally, let's state the obvious here: Boian Mitov should not have changed his core library to inline variables until he was completely satisfied that it wouldn't cause problems for his customers. Changing your legacy source code in thousands of places to utilize a new feature of Delphi seems pretty reckless without adequate testing. Yes, we should be able to trust the compiler, but how about using Microsoft as an example... They have one of the largest R&D budgets in the world and they still ship very questionable software. If they came out with Visual Studio 2021 today, would you immediately migrate all your source code to it, after changing it in thousands of places to use one of the VS 2021's newest language features, and then quickly ship your product to all of your customers with a large amount of memory leaks? Would you be out there stating that Microsoft shouldn't be able to sleep at night, or would you be rolling back your changes and provide a stable product again to your customers? I certainly don't like providing an excuse for buggy code, or lack of tests. But this particular example is certainly not the hill to die on.
-
Strongly disagree. 10.4.1 is a lot more useable on our large project at work than any previous version was. Sure, it's far away from perfect, but it does not mean it's a "black hole". Tbh I was already shocked that inline variables will be added to the language. Was it community requested? Majority of the coders are staying away from it as far as I heard.
-
We have zero information about what kind of bug is in the compiler. It can be a 5 second fix or can require a rewrite. I doubt that rollback to Delphi 10.3 is an option otherwise why would anyone change the compiler? As a software developers I think it is reasonable that we can understand that even that there is a bug for some cases nobody tries to rush fixes to be published and risk to introduce new bugs (and make the situation worse). For these kind of things it's better to test and be sure that it's working. BTW. I am also in the process to move from old versions to 10.4 and I am also not happy the state of the IDE and compiler (after these fixes and one minor version there are still known bugs).
-
Are Valid Dates?
Fr0sT.Brutal replied to Ian Branch's topic in Algorithms, Data Structures and Class Design
Generally it's true but timezone could be "global" per-app / per-DB (ideal case is UTC) I still can't get what you're checking. Global variables are bad practice anyway and in your case they appear useless. If StrToDateTime haven't risen any exception, you're already sure the date string is valid. -
Can 32bit dll with Form/Frame be used in 64 bit project?
FPiette replied to Mike Torrettinni's topic in VCL
Long time ago, I wrote an application which hosted forms from another application, both are exe files. The host application run the child application and find the handle of the form to be embedded, then it change his parent. Windows will make the child window appear in the host application as child! In your case, you write both applications. The host is 64 bit and the child is 32 bit wrapping the 32 bit ActiveX. You can even ease the communication between the two instead of using API to enumerate process and windows to find what you need and transfer data between the two applications.