Borland the company (and brand), synonymous with Delphi, Pascal, Turbo C and Windows coding, is now ‘The Open ALM Company’. No longer a single reference to any of its great products or past glory. What is ALM, I hear you ask? Me too. I found the meaning right at the bottom of the Borland web site, in the small text. ALM is Application Lifecycle Management. OK, you and I should know this as we’re in the ‘industry’. ALM is where Borland are at these days. I call it consultancy, all very corporate and non-descript. I wish Embarcadero (that just rolls off the tongue, doesn’t it) had bought the Borland name as well as the product code. Borland RAD Studio 2009 or even better Borland Delphi 2009 sure sounds better than Embarcadero Technologies CodeGear RAD Studio 2009
Good ol’ Borland, and good luck Tod Nielsen. Check out what he’s doing with our beloved Borland brand:
http://www.borland.com/
Industry Borland
Hosting has often been an issue for me. Reliability and price/performance are obvious factors in choosing the best host. Additonally, because a lot of our TCP Server work is written using Delphi, we are always on the lookout for a good Windows host. These have been difficult to find withouth paying lots of dollars. In fact, we write a lot of server code in PHP which allows us to take advantage of cheaper Linux-based hosting. For the past two years we have hosted our Linux servers with a company in the US called WiredTree (www.wiredtree.com). I can recommend them very highly. Their service, support and price is unmatched. Check them out.
Windows hosting has been a little less than reliable. However, I discovered a company recently who look like they might bake the grade: LiquidWeb (https://www.liquidweb.com/). We’ll be trying them out soon for our Windoes server hosting and I’ll report back with details.
Hosting Hosting, wiredtree
Recently I’ve been doing a lot of torrent downloading and wanted to shutdown my torrent computer after a specified period of time, so, I wrote the following short function, connect it to a TTimer and you’ve got an automatic (and well-behaved) means of shutting-down Windows XP, Vista and Windows 7. The RebootParam is: EWX_POWEROFF or EWX_FORCE.
function MyExitWindows(RebootParam: Longword): Boolean;
var
TTokenHd: THandle;
TTokenPvg: TTokenPrivileges;
cbtpPrevious: DWORD;
rTTokenPvg: TTokenPrivileges;
pcbtpPreviousRequired: DWORD;
tpResult: Boolean;
const
SE_SHUTDOWN_NAME = 'SeShutdownPrivilege';
begin
if Win32Platform = VER_PLATFORM_WIN32_NT then
begin
tpResult := OpenProcessToken(GetCurrentProcess(),
TOKEN_ADJUST_PRIVILEGES or TOKEN_QUERY,
TTokenHd);
if tpResult then
begin
tpResult := LookupPrivilegeValue(nil,
SE_SHUTDOWN_NAME,
TTokenPvg.Privileges[0].Luid);
TTokenPvg.PrivilegeCount := 1;
TTokenPvg.Privileges[0].Attributes := SE_PRIVILEGE_ENABLED;
cbtpPrevious := SizeOf(rTTokenPvg);
pcbtpPreviousRequired := 0;
if tpResult then
Windows.AdjustTokenPrivileges(TTokenHd,
False,
TTokenPvg,
cbtpPrevious,
rTTokenPvg,
pcbtpPreviousRequired);
end;
end;
Result := ExitWindowsEx(RebootParam, 0);
end;
Delphi, Software shutdown source
If you’ve been doing Delphi development as long as me, then you’ll know about Marco. Way back in the days before the internet (about 10 years ago), they used to have places called libraries and bookshops. These were our only source of information and reference for Delphi programming tips and advice. Nowadays of course, things have changed alot and most of us rely soley on google and the web. Occasionally, during my never ending search for more Delphi info, I land on Marco’s site. Usually brought to it because google picked-up a code-snippet from his latest book. I’d really like to know who buys them these days. Hat’s off to Marco for all those early years of knowledge!
http://blog.marcocantu.com/
Books delphi books, marco
Time and time again my google delphi search leads me to this excellent resource of information on programming and the fundamentals of Delphi:
http://www.delphibasics.co.uk/index.html
Thanks Neil for a truly useful resource!
Delphi Delphi, Programming
Happy new year and best wishes for 2009!
Delphi, php r/c helicopter
I’ve been in/out of video dabbling in Delphi form a long time. Recently I got into it again with a view to using it on my new www.pixavid.com site. Wow! What a problem finding any kind of decent resources on the web for using FFMpeg. Anyhow, after much search, I found Victor Zinetz has converted headers to pascal – here’s the link:
http://www.iversenit.dk/dev/ffmpeg-headers/
There’s also a new component available from the following link:
http://www.DelphiFFmpeg.com
Note. These guys are asking $300 for just the .dcus!
video ffmpeg
Recently, a client asked me to put together a short document detailing why we are using a ‘dying’ programming language (Delphi) to implement their latest and greatest software solution. I’ve included that document below, just in case you need to convince any prospective clients:
Delphi – Long Life, Great RAD
“The Delphi development environment is dead, long live Delphi!”
The most popular global application written in Delphi is Skype. Its money worth is about $4.6 Billion. Skype invest heavily in Delphi development tools.
Delphi is used substantially by commercial software vendors. December 2008 – Fourteen of the top twenty applications listed at download.com are written in Delphi. Many commercial software products, both those in shrink-wrap at retail stores and those for vertical markets, are written in Delphi and will continue to be, because there are very few other good choices for developing high quality (polished) native Win32 GUI software.
Popular applications written in Delphi:
-
Skype
-
Yahoo TV
-
The Online Trader
-
Ad-Aware
-
Tune-Up
-
Webroot Spy Sweeper
-
Macromedia Captivate
http://delphi.wikia.com/wiki/Good_Quality_Applications_Built_With_Delphi
May 2008 - Delphi gets $53 million cash injection – bought by Embarcadero
Embarcadero acquire CodeGear, Borland’s Developer Tools Division for $23 + $30 million, creates the world’s largest, platform-independent software provider of database and application development tools.
http://www.codegear.com/about/news
February 2008 – Russian Government Order One Million copies of Delphi
The Delphi deal is part of a $100 million government initiative, the National State Project of High-Grade Education, which will add computer programming to public education curricula.
http://www.informationweek.com/news/management/showArticle.jhtml?articleID=206102054&cid=nl_IWK_daily
December 2008 –Delphi (RAD) Studio 2009 released
Delphi 2009 helps meet the challenges of the rapidly expanding global market, and expand the reach of global applications to more users.
http://www.codegear.com/products/delphi/win32
Embarcadero Technologies Inc. – Owners of Delphi, empower application developers and database professionals with tools to design, build, and run software applications in the environment they choose.
http://www.embarcadero.com/company/fact_sheet.html
Delphi (CodeGear) web site:
http://www.codegear.com/
Project Management RAD
I’m a lucky guy. Most of my time is spent doing something I enjoy very much… writing software with Delphi of course! As an outsourcing company, we often deal with clients that are thousands of miles away. In the past, we tried a variety of different methods and techniques for keeping the client up-to-date with application development, milestones, etc. It’s always been difficult to get the balance right between a tool that helps the process of communication, but doesn’t overload our resources and take valuable time away from dev. Well, after much search for such a tool, I’d like to recommend Unfuddle:
www.unfuddle.com
From their web site:
Unfuddle is a secure, hosted project management solution for software development teams.
Go take a look.
Project Management Project Management
We’re doing some pretty exciting stuff at work right now. Actually, we’ve been doing it for the past couple of years but only now starting to see the fruits of it all. What is it? well, I guess Microsoft would call it ‘Live’ (or something like that), and Google would call it, well, I’m not sure, gOS? or online documents, or something… We don’t have a name for it yet (maybe WizLiveOz) but it involves communicating between Delphi and PHP using XML. Most data is stored on the server and the Delphi client makes requests via XML on port 80 (HTTP). The returned XML is/can be stored locally but the great thing is, move the client to another machine and it gets all the data again. However, we need to encrypt all the XML to keep everything secret (of course). So, I googled this great Crypto site:
http://cityinthesky.co.uk/cryptography.html
Here’s a code snippet for the PHP side which decrypts the XML coming in from Delphi:
// *******************************************************************************
// Decrypt xml from client – START
$key = ‘lettherebedelphi’;
$iv = ‘andphpstoo12345′;
if ($XML <> ”) {
$encryptedcbc = ltrim($XML, “XML=”) ;
// echo ‘<p>Got: ‘.$encryptedcbc . ‘<br>’;
$encryptedcbc2 = base64_decode($encryptedcbc) ;
$decryptedcbc = mcrypt_cbc(MCRYPT_RIJNDAEL_128,$key, $encryptedcbc2, MCRYPT_DECRYPT, $iv);
$output = rtrim($decryptedcbc, “\0″);
// echo ‘<p>CBC decrypted: ‘.$output;
$XML = $output ;
}else
{
exit ;
}
// Decrypt xml from client – END
// *******************************************************************************
Delphi cryptography
Writing Delphi apps is only half the fun. The other half is getting paid for developing those apps! Over the years I’ve used several third-party payment providers, including Regsoft, Digital River and a few others. However, time and progress wait for no programmer: PayPal is the (soon to be) only kid on the payment provider block, so it’s time to get down dirty with a little PHP code, MySQL and the inner workings of PayPal API plus sandbox. The whole paypal developer documentation leaves a lot to be desired, so a quick google search found this little nugget:
http://leepeng.blogspot.com/
Thank’s Lee for a great tutorial
php payments, paypal, php
When I was a lad (boy), English was the only language in the world and the internet wasn’t even a twinkle in the eye of the guy who thought it all up (TBL?). These days, every darned app. needs to be multi-language capable. Not only but also, it needs to support all those weird foreign chanracters like in Russian or Thai (can your browser display this: ?????? ). Where does that leave us Delphi developers? TNT! No, not the dynamite, or the delivery people, but that excellent set of components that internationalizes your Delphi applications. TNTUnicode was bought by TMS (another TLA) a while back, but you can still get the free set from here:
http://www.yunqa.de/delphi/doku.php/products/tntunicodecontrols/index
components
Anything sweeter than that smooth iTunes album coverflow effect?! I’ve searched-out an example or two in the past but mostly google gave me a flash/swf/flex sample which is not in my repotoire. However, recently I tried again and came across this nice Delphi example from Sean at SourceITSoftware.
http://sourceitsoftware.blogspot.com/2008/06/coverflow-update.html
animation animation effects
Well! It took a while but we did it and here is the brand new release of our award-winning CPU speed measuring software.

We also created a new web site, separate from the WizardSoft site. Please take a look here:
http://www.cpuspeedpro.com/
CPU Speed Professional records processor speeds from all over the world. You can check your speed score in the worldwide ranking tables. Click the ranking button on the web site to view latestest CPU scores and performance table.
Software
No Delphi blog would be complete without a mention of TMS Components. They sell (develop) a wide range of components for Delphi – an absolute must have in your Delphi toolkit:
http://www.tmssoftware.com/site/
components components