Wednesday, March 11, 2009

New Delphi language features presentation

Here's my Australian Delphi User Group presentation on the new language features introduced into the Delphi language between Delphi 7 and Delphi 2007.

Zipped up Camtasia presentation recording

Delphi development using VMWare

Here's my Australian Delphi User Group presentation on using VMWare Workstation for Delphi development.

Zipped up Camtasia presentation recording

I do all my development in virtual machines these days. I don't even have Delphi installed in the host operating system. I find it a great way to keep the work I do for different clients or different personal projects completely separate and always ready to produce a build or debug error reports no matter how much time has passed.

Monday, May 12, 2008

Live Templates Camtasia

Back in November 2006 I did a presentation for the Australian Delphi User Group titled Long Live Live Templates.

At the time I recorded it using the freeware CamStudio but since then I've splashed out and purchased Camtasia which I used to make the recording a bit more user friendly. Here it is if you'd like to take a look.

Zipped up presentation recording.

Source code and notes.

Saturday, October 20, 2007

No Intraweb 9 help in CRS 2007

Once again the Intraweb help is not integrated into the Delphi help system. It's supplied, you can find it in under \Help\Doc\Intraweb in your RAD Studio folder, but it doesn't appear in either the help contents, the help index or when you press F1.

I've worked out how to make it appear in the help index and the F1 context help. It doesn't appear in the table of contents but once again I'm not sure if this is a bug or by design.

  1. Open $(BDS)\Help\Doc\h2reg.ini inside Notepad

  2. At the end of the [Reg_Title] section add the line

    borland.bds5|Intraweb||Intraweb\Intraweb.HxS|Intraweb\Intraweb.HxI|

    Apologies for the line wrapping, that should be just a single line.

  3. At the end of the [UnReg_Title] section add the line

    borland.bds5|Intraweb|

  4. Save and close the h2reg.ini file

  5. Open a command prompt and change the directory to

    $(BDS}\Help\Doc

  6. Enter the command

    h2reg -r

  7. Load the RAD Studio help using the Windows Start Menu. (Start | All Programs | Codegear RAD Studio | RAD Studio Documentation)

    The help window should say it is updating for a minute or so.

After that's all finished you should see Intraweb help in the index and when you press F1 in the IDE.

Saturday, February 12, 2005

An embarrassing mistake

I must have been drunk when I wrote it. For quite some time this entry on my blog that describes how to modify the Delphi 2005 help system has been incorrectly stating you use the helpReg command. There actually is no helpReg command, the correct command is regHelp.

I've corrected the page now but my apologies if you tried to follow my instructions before today.

Tuesday, January 04, 2005

A lean mean Delphi machine

If you're using Delphi 2005 and you're not using custom registry configurations you're doing a lot of unnecessary waiting around for features to load that you aren't going to use. For instance if you're working on a Win32 project, you really don't want to be loading the ECO packages. Also some of the Delphi 2005 features are a little immature and preventing their packages from loading can improve the IDE stability immensely.

Custom registry configurations are an undocumented feature of Delphi that unbeknownst to us all have been available from Delphi 6 onwards. Corbin Dunn from Borland has probably provided the most detail about this useful feature. His instructions involve modifying the registry directly with RegEdit which can be a risky affair if you inadvertently delete the wrong keys.

I've been working with Erwien Saputra and together we've put together a utility that makes it easy and safe to create these custom configurations. It works by copying either your base configuration or another custom configuration and then lets you modify the new configuration safely.

Key to creating these custom configurations is knowing which packages and assemblies are required for which style of development. I've put together an article discussing the different Delphi 2005 packages and how they relate to Win32 VCL development. It's the first article in a series I'm working on. Subsequent articles will discuss the packages needed for VCL.NET, Winforms, ECO, C#, ASP.NET with Delphi, ASP.NET with C# etc. There's lots of gaps in my knowledge of these packages though so I'd love any feedback you can provide on their functions.

CodeSite 2 can work in Delphi 2005

If you're a user of Raize Software's CodeSite debugging tool, you might have received the same shock I did when going to the Raize site to download an update for Delphi 2005. CodeSite 3 was released a few months ago and there is no official support for using CodeSite 2 in Delphi 2005.

The upgrade price for CodeSite 3 is quite hefty and hard for me to justify right now. CodeSite 3 looks impressive but I only use a fraction of the features of CodeSite 2 and I don't think that's going to change any time soon.

I've was pondering what to do about this when I realised that the source code for the runtime packages was provided with CodeSite 2, it's only the design time packages that source wasn't provided for.

A quick copy and update of the old runtime packages to Delphi 2005 format proved this to be correct. I can now make full use of CodeSite 2 through source code in Delphi 2005. The CodeSite components are not available but I rarely used them and all they do is save you typing a few lines of code anyway.

To get CodeSite 2 running in Delphi 2005.

  1. You need to already own a copy of CodeSite 2. This won't work otherwise.
  2. Save this updated CodeSite 2 package for Delphi 2005 in your CodeSite2\Source folder.
  3. Open it in Delphi 2005 and choose "Delphi for Win32" when asked what the package type is.
  4. Compile the package.
  5. I recommend you create a CodeSite2\Lib9 folder similar to the CodeSite folders for the other compilers. Copy the csintf.dcu, CSP20I90.dcp and CSP20I90.dcu files into it.
  6. I also recommend you copy the CSP20I90.bpl package into C:\WinNT\System32 alongside the other CodeSite 2 runtime packages.
  7. Lastly you'll need to add CodeSite2\Lib9 to your Delphi 2005 Library Path.

After that's done you should be able to use the csintf unit in your Delphi 2005 Win32 projects like you could in Delphi 7. If you need .NET support though you'll need to purchase CodeSite 3. From past experience CodeSite 3 is quite likely a fantastic product, it's just more than I need right now.