Archive for the ‘Delphi’ Category
Posted by jpluimers on 2014/02/13
Summary: Always try to avoid sharing .DCU files between projects.
I see a lot of projects at clients that do not have their individual DCU directories set (therefore having the DCU files in the same directory as the PAS files causing shared units to share the DCU files), or share DCU files among different projects.
Both are a very bad idea, as the compiler does not always understand when the DCU file does not match the combination of PAS file and compiler options.
The result is the occasional use of the DCU file in stead of the PAS file causing wrong code to be used, or wrong debugger information to be included.
Danny Thorpe phrased it on Stack Overflow: Read the rest of this entry »
Posted in Borland Pascal, Delphi, Delphi 1, Delphi 2005, Delphi 2006, Delphi 2007, Delphi 2009, Delphi 2010, Delphi 3, Delphi 4, Delphi 5, Delphi 6, Delphi 7, Delphi 8, Delphi x64, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Development, FreePascal, Lazarus, Pascal, Turbo Pascal | 9 Comments »
Posted by jpluimers on 2014/02/12
Do not forget to register for the RAD-in-Action Webinar Unit Testing in Delphi featuring Nick Hodges.
If you cannot watch it live: register anyway, as that will give you the URL for the replay download.
Very interesting stuff (I attended his sessions during the German EKON Conference) and a very entertaining speaker.
He is going to cover a lot in this seminar, and it is a great addition to the material in his Coding in Delphi book (Warren Postma wrote a nice review). You get the electronic edition of the book free when you have Delphi XE5, a hard-copy should be available soon. Read the rest of this entry »
Posted in Delphi, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Development, Software Development | Tagged: Delphi, nick hodges, Warren Postma | 1 Comment »
Posted by jpluimers on 2014/02/12
Just as a few small notes as a reminder to myself:
- bash profile shortcuts to the right PAServer or paserver
- PAServer command-line options
- example output of PAServer commands
Lets get started: Read the rest of this entry »
Posted in Delphi, Delphi XE3, Delphi XE4, Development, Software Development | Leave a Comment »
Posted by jpluimers on 2014/02/03
With a more decent internet connection during our trip, it is time to catch up on some recent news.
The first that caught my eye was that the Chromecast API now is open to all developers.
Developer information is available through Casting Your Content to the Big Screen – Google Cast — Google Developers.
You need to pay a one-time USD 5 fee per development account (how’s that Apple?) for the Google Cast SDK Developer Console.
After that, you will have to register your Chromecast device(s) and custom or styled media receiver apps.
Interesting. Fun.
I hope this can be combined with the new Smart Mobile Studio 2.0 release or the Delphi for Android support.
Will get back on that as soon as I’m back home.
Resources:
More links:
–jeroen
via: Chromium Blog: Ready to cast: Chromecast now open to developers with the Google Cast SDK.
Posted in Chrome, Chromecast, Delphi, Delphi XE5, Development, Google, JavaScript/ECMAScript, Pascal, Power User, Scripting, Smart Mobile Studio, Software Development | 1 Comment »
Posted by jpluimers on 2014/01/29
In the series “interesting stuff you can do with Implicit operators”: delphi – With a class operator is an implicit typecast to itself allowed? – Stack Overflow.
Be careful though, as Implicit assignment will allow more code paths to the compiler than you expect at first sight (:
–jeroen
Posted in Delphi, Delphi 2007, Delphi 2009, Delphi 2010, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Development, Software Development | Leave a Comment »
Posted by jpluimers on 2014/01/28
I was amongst the C# programmers that believe the below table of C# integral types is an alias table. But it is not: it is a synonym table.
You can use the common type system types as coding standard, or prefer the C# types. There are arguments for both.
I am still in the first group: prefer CTS types. They make changing between .NET languages a lot easier (C# and VB.NET are not the only .NET based CLI languages I use).
And indeed almost everywhere you can exchange the .NET Framework Type and the C# type without changing meaning.
Posted in .NET, C#, Delphi, Development, Jon Skeet, Software Development | 1 Comment »
Posted by jpluimers on 2014/01/24
Being away from a computer sometimes means you forget about events.
So before I forget: happy 30th birthday Mac!
For me, real programming started 31 years ago on an Apple II at high school, soon followed by a II+ and a //e. At first, I was programming in both Integer Basic and AppleSoft Basic, then with Apple Pascal (which was based on UCSD Pascal, but way too slow), and finally with Turbo Pascal 1.0 (after they installed a Microsoft Z-80 softcard in a few of the machines which allowed it to run CP/M).
Back then me, nor my parents could afford a computer like a Mac, but I was lucky enough to keep on people at the “close by” (30 minutes by bicycle) University to use one and program in hyper card and various Pascal dialects (and later Delphi).
Now I own a few Macs (most more portable than the //c) bought a //e and //c last summer and collecting some extension cards to make life easier.
Just look at the B&N magazine rack how popular the Apple stuff is today:

So again: happy 30th birthday Mac!
Without you, I wouldn’t be a software developer.
–jeroen
via: Apple bracht eerste Mac-computer 30 jaar geleden uit – Computer – Nieuws – Tweakers.
Posted in //e, Apple, Apple Pascal, Delphi, Development, Mac, Mac OS X / OS X / MacOS, Mac OS X 10.4 Tiger, Mac OS X 10.5 Leopard, Mac OS X 10.6 Snow Leopard, Mac OS X 10.7 Lion, MacBook, MacBook Retina, MacBook-Air, MacBook-Pro, Object Pascal, OS X 10.8 Mountain Lion, OS X 10.9 Mavericks, Pascal, Power User, Software Development, Think Pascal, Turbo Pascal, UCSD Pascal | 1 Comment »
Posted by jpluimers on 2014/01/10
Ever since around Delphi 2007, it started to use temporary .VRC files to re-build the project .RES file.
It confuses people, and with reason as the only public information about it on the dockwiki seems to be in the Version Info page (though there is more on the other embarcadero sites).
The reason is that parts of the .RES file are no more leading in the process of getting them from your project options to the final binary (EXE/DLL/BPL/…) of your project.
Delphi XE3 for instance can have these resource structures in the .VRC file:
Except for type 24, Delphi XE2 seems to have the same kinds of resource types.
All in all, most if not all of the .RES files are being auto-generated for at least a couple of years now so there is less and less need to put it under version control.
The problem is that if for one reason or the other, your project .RES file becomes readonly, and you get errors like mentioned in Why does a projects res file need to ….
[BRCC32 Error] xxx.vrc(1): error creating xxx.res
.RES in VCS or not?
Read the rest of this entry »
Posted in Conference Topics, Conferences, Delphi, Delphi XE, Delphi XE2, Delphi XE3, Delphi XE4, Delphi XE5, Development, Event, QC, Resource Files and Scripts (.res/.rc), Software Development | Leave a Comment »
Posted by jpluimers on 2014/01/04
Hadn’t been doing SOAP in Delphi for a while, and needed to send some Delphi data structures over the write where both Client and Server were going to be Delphi.
These links helped me:
If both client and server are Delphi, you can share the interface units and registration.
Note: since native Delphi SOAP support uses old-skool RTTI, so any property you want to go over the wire needs to be published, not public.
If you want to go beyond that, or use other protocols than SOAP, use libraries for Delphi like RemObjects SDK.
–jeroen
Posted in Conference Topics, Conferences, Delphi, Delphi XE3, Delphi XE4, Delphi XE5, Development, Event, Software Development | Leave a Comment »