## EZDSL for Delphi 2009

As mentioned here a while back, the number of changes needed to make EZDSL compile with Delphi 2009 are minimal. The main reason, I suppose, is because EZDSL doesn't use strings all that often and when it does, it uses the string type without doing any clever stuff with any instances.

So, there are all the changes:

EZDSLHsh.PAS: there was a packed record in there, an early beta of D2009 complained about the packed keyword, so I removed it. Shouldn't make any difference to any other Delphi (not that I have them installed to check anymore).

EZDSLOpt.INC: had to add another compiler options block for Delphi 2009. It's the same as most of the other Win32 compiler blocks.

DTSTGEN.PAS: this is a set of helper routines for the test apps. It had a bunch of shortstrings in there, which caused some issues with the Unicode nature of Delphi 2009. So I changed all the shortstrings to ordinary strings. The only issue this change would cause is for Delphi 1, because the compiler will reserve the full 256 bytes for a const string. Oh well.

Er, and that's it.

I've created a special "add-on pack" for Delphi 2009. It contains the new versions of the files mentioned above, a set of files to create an EZDSL package (does anyone even use these any more?), and a little readme. You can download it here. You can download EZDSL here.

Now playing:

### 3 Responses

• Thu 10 Sep 2009
• 4:03 AM
• #1

#### Sharken said...

I am running EZDSL on Delphi 2009, and was getting access violations in the GetNode() code. After a long time i have discovered that the problem is related to unicode.

The fix is to replace all occurrences of string with ansistring, and replace PChar with PAnsiChar.

For me that was enough to make EZDSL work with Delphi 2009.

• Sat 02 Jul 2011
• 8:34 AM
• #2

#### Mike said...

"The fix is to replace all occurrences of string with ansistring, and replace PChar with PAnsiChar".

Should the replacement be done in the EZDSL code?

I have a problem with access violation. Trying to port my old code which uses EZDSL from D6 to XE.

• Sat 02 Jul 2011
• 9:10 AM
• #3

#### julian m bucknall said...

Mike: Yes, I would assume that Sharken meant make those replacements in the EZDSL code.

I really must recompile and test EZDSL with Delphi XE. Let's see what I can do over this long weekend.

Cheers, Julian

### Leave a Response

Some MarkDown is allowed, but HTML is not. (Click to learn more.)

• Emphasize with italics: surround word with underscores _emphasis_
• Emphasize strongly: surround word with double-asterisks **strong**
• Link: surround text with square brackets, url with parentheses [text](url)
• Inline code: surround text with backticks IEnumerable
• Unordered list: start each line with an asterisk, space * an item
• Ordered list: start each line with a digit, period, space 1. an item
• Insert code block: start each line with four spaces
• Insert blockquote: start each line with right-angle-bracket, space > Now is the time...

# Extras

## Search

I'm Julian M Bucknall, an ex-pat Brit living in Colorado, an atheist, a microbrew enthusiast, a Volvo 1800S owner, a Pet Shop Boys fanboy, a slide rule and HP calculator collector, an amateur photographer, a Altoids muncher.

## DevExpress

I'm Chief Technology Officer at Developer Express, a software company that writes some great controls and tools for .NET and Delphi. I'm responsible for the technology oversight and vision of the company.

May 2015 (0)
SMTWTFS
« Apr
12
3456789
10111213141516
17181920212223
24252627282930
31