v1.0.3.9 - 4/dec/2004 - fixed a bug in the 'security block' restoration heuristics: this should reduce / eliminate failures to load and decode the CAT databases, due to the protection block in the CAT databases at the start of disk #6. - changed the code so it eats QUITE a bit of memory LESS: now arbitrary length databases are decoded and dumped in a 'fixed' memory space: you'll probably need less that 60MB RAM to run this beast, even when dumping databases as large as 1GByte! This result is achieved by dumping the database PER DISC, i.e. only one disc from the database into memory at a time, and releasing the memory before loading the next disc. The effect is a minor speed/performance reduction, but the whole database doesn't need to load into memory anymore (previous versions required up to 7 TIMES THE ORIGINAL SIZE OF THE DATABASE AS FREE RAM MEMORY; NOW YOU ONLY NEED ABOUT 70 MBYTE FREE RAM MEMORY, NO MATTER HOW LARGE YOUR DATABASES ARE). All in all a significant improvement I'd say, especially for users with large databases! :-) Enjoy! ----------------------------------------------------------------- v1.0d - 23/may/2003 - added the option =option QUOTE_ESCAPE_STYLE ..... allowing you to specify an arbitrary set of 'character escape' sequences for each character in the character set. See the 'adc_dumper_config.txt' configuration file for some examples. Basically, you can use this option to specify how embedded quotes (and other characters) in any strings should be 'escaped': [d]uped (" => ""), [C]-style (" => \") or [n]one (" => ") - some hotfixes related to the way 'signed' characters expand to integers. This had a negative effect on dumped string elements, which contain 'high ASCII' characters (outside the range 1..127). - Also fixed a missing 'format option' transfer, which would cause some dumped elements to be incorrectly formatted (not matching the specification in the config file). ----------------------------------------------------------------- v1.0c - 21/may/2003 - finally, the bloody icon shows for the Console App. Phew. Cause of failure: incorrect language and AFX_RESOURCE_DLL defines were present in the project files and somehow MSVC didn't wish to help me get rid of those. So hacking of the project file for VC6+VC7 by using UltraEdit resolved this: now th project files work as expected. - added the whole slew of '=option' CSV Configuration file (see the sample config file) options. Almost all relate to the 'timestamp' formatting to make sure timestamps are 'understood' by your local database engine. Now you can specify your own timeformats for use by adc_dumper to allow a smooth DB import operation, no matter the prerequisites of your database engine. See the 'adc_dumper_config.txt' file for some examples and a complete list of supported options. - @Verbose and @StartID CSV Configuration options are now obsoleted and have been replaced by analogous '=option' tags. - The CustomEvaluator addon for VC6/7 now at least compiles under VC6. It hasn't been verified to work under VC6 yet, though! - hadn't been mentioned before, but since 1.0b the app checks if you have enough free (virtual) memory available before munching away on your 100MB+ catalogs. Since a very simple heuristic is used, there's still a small chance adc_dumper will fail due to lack of memory (RAM+swapspace) but chances are abysmally tiny. ;-) In short: if you don't get a error quickly after starting adc_dumper, you don't have to worry anymore you'vegot enough oompf in your machine to munch and dump the complete catalog. ----------------------------------------------------------------- v1.0b - 12/may/2003 USER REQUEST: dump date/time stamps in "-delimited strings for improved import into MSQL Server databases. Future version will allow dumping the date/timestamp in a user-specified, configurable way. Right now, the code uses your system's LOCALE settings to determine the Windows' preferred date/time representation format for 'short date' and '24 hour time format': GetDateFormat(GetThreadLocale(), DATE_SHORTDATE, systemtime, NULL, dst, len); ... GetTimeFormat(GetThreadLocale(), TIME_FORCE24HOURFORMAT, systemtime, NULL, dst, len); ----------------------------------------------------------------- v1.0a - 2/feb/2003 BUGFIX: crash wasn't only due to out-of-memory problems but also a few serious flaws in the SetLine() CSV text line creation logic: paths would grow to huge sizes, while the grow logic would also corrupt the ADCstring storage. This bug has been fixed. ----------------------------------------------------------------- v1.0 - 1/feb/2003 Initial release. Known problem: crashes with large ADC catalog ( > 100 MB)