Thanks Les, some of my very basic testing seems to back up what you say. I seem to be able to write hundreds of kilobytes of data to an INI file and I have no problems at all.

Using ReadProfileString, if I specify a key to look up, works perfectly too. What doesn't work so well is if I specify a blank key to return an entire section of the INI file. When I tried this on a file with 40,000 keys, ReadProfileString returned no data, no error and nothing in @ERRORLEVEL. By adding and removing lines from my test INI file I found that the threshold seems to be approx 6350 keys, or just over 48KB.

Anyway, this is more than I'll ever need!