-
Content Count
1291 -
Joined
-
Last visited
-
Days Won
28
Posts posted by Sherlock
-
-
I don't think I could pass the exam
But some of our MVPs such as @Uwe Raabe have, perhaps he might share some insights.
-
Well take a step back then. Do you know what you are doing? You are mixing two things here, maybe at first try this with just the important one and save the syntactic sugar of inline variables (which may still be buggy) for later:
procedure TGISEngine.AddFilenames(const AFilenames: TGISFilesnamesSHP); var F: string; // I'm just guessing here, and maybe that is the compilers issue as well begin if (Length(AFilenames) > 0 ) then for F in AFilenames do if not FFilenames.Contains(F) then FFilenames.Add(F); end;
Later on, you may read what the Docwiki has to say about the limited abilities the compiler has regarding type inference and discover their examples for inlines in for...in loops all have a type declaration.
-
Just my two cents as a person who has been developing commercial software with Delphi for over 20 years now (where has all the time gone? sigh). Whenever there have been issues with the software, one thing turned out to be true: The DB was almost always the problem. That, or the way DB data was being handled. Rethinking table design and handling of DB-aware and not-DB-aware components have always done the trick.
But feel free to produce a minimal reproducible example for the folks at Embarcadero, if you are 100% sure that Delphi is at fault.
-
8 minutes ago, omnibrain said:Perhaps we should add something like MadExcept. It's a shame that Delphi offers no inbuilt StackTrace at runtime.
That is a good thing. Anything built into Delphi slowly decays due to lack of maintenance. Until one day it produces only errors and management has to decide wether to trash it or build something around it to try and fix it. Most prominent recent example: ErrorInsight fixed through LSP. Or the Parnassus tools...taking longer and longer to appear in GetIt with each new Delphi version.
-
For an deeper understanding read here: https://www.exploringbinary.com/why-0-point-1-does-not-exist-in-floating-point/
And this is your solution: https://docwiki.embarcadero.com/Libraries/Sydney/en/System.Math.IsZero if you want to check for zero values.
-
My hammer beats every other tool every time.
-
2
-
-
Everybody cool down please, and don't get personal. Thank you.
-
1
-
-
Well, which Windows version is this? Windows 7 is not supported anymore, AFAIK.
-
Check out AddFontResourceEx and RemoveFontResourceEx from the Windows API. Note that while the font is installed, it may be used by any other program in your system unless you load it FR_PRIVATE.
-
-
So, I have no Idea, what the issue really is, it is not FileExists. At least the way I try to reproduce missing privileges no exception is raised... so I retract that statement as bogus. Sorry for the fuss.
-
Just happened to me in at least 10.4.2 may even be so in 11.2.But maybe it is something else, will try to put together a small demo, time permitting. -
Design time DB connections have been a pain for me in the past in several ways. Normally now I have no connection, and enable only when needed (which is rarely the case anyhow). Result is way less problems.
-
Just for completeness sake it should be noted, that FileExists will raise an exception, if the current user has insufficient rights to read the file.Turns out, that is completely false. Sorry about that.
-
I see that F is indeed checked further up. I only considered the last quoted portion of code. As for the "tutorial" it is quite tedious to follow. I personally hate video tutorials, because they are always to slow when it does not matter and to fast when it does. A readable tutorial is worth so much more than that. Anyway... I recreated the project as stated in the video,I even copied your code, and it works without errors. You must have done something different along the line...especially since your screenshot somewhat differs from the video.
-
Well, don't typecast without checking if the type fits. You need to check if F really is a TLayout and if child 0 really is a TLine. Something like:
if F is TLayout then if TLayout(F).Children[0] is TLine then L:=TLine(TLayout(F).Children[0]);
On the other hand you should only type cast when necessary. TFMXObject has a perfectly fine Children property no need to cast F into a TLayout.
Check your entire code for these things and you should have eliminated one cause for the AV.
-
1
-
-
I admit it has been 10+ years since I looked into translation tools, but dxgettext was the least Delphi like with an inability to use resourcestrings. Multilizer and later on Sisulizer have been the tools of choice for me ever since. But I must admit I have not been needing localization tool in the past couple of years so my bias is very sure to be outdated.
-
Which line throws the AV?
-
It's called a data module. And you can search its dfm file like any other Delphi dfm...if it is not binary, which should be default.
-
10 minutes ago, RDP1974 said:Delphi language is evolved a lot in the last years
should be very useful a blog where to show the new language capabilities
Not a blog, but even better (IMHO): https://stackoverflow.com/questions/8460037/list-of-delphi-language-features-and-version-in-which-they-were-introduced-depre
-
1
-
-
Well I am just glad, that my applications seem to be barely more complex than "Hello World" because I really have none of these issues. But then again I use no inline variables, bpl, dll, 3rd party frameworks or language enhancements or any other new agey stuff I'm not able to wrap my head around anyway. Just plain old Delphi plus generics. And that works really good.
-
1
-
-
8 hours ago, rudy999 said:TfrmMain.ttreeViewChange(Sender: TObject; Node: TTreeNode); //.... if Node.HasAsParent(myParentNode) then begin myParentNode := Node.Parent; strParentText := myParentNode.Text; end;
The question is, what happens to myParentNode before the if statement. How is it initialized/filled?
-
Do you mean, these sources are located in the folders of your XE5 installation?
-
5 minutes ago, dummzeuch said:But do we really need yet another discussion on this? And Exit, and Continue and Break and .... FreeAndNil ?
Nonono, of course not. I just wanted to weaken the "it's just another tool in the box" argument.
The Delphi Certified Developer // To prepare for the exam
in Tips / Blogs / Tutorials / Videos
Posted
Oh, right! I just had the Master in mind. And that I am not...