--------- IMPORTANT --------- * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Dimeric Software Product Information Virtual Database (VDB) FULL Version * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * Thank you for purchasing VDB -- we hope you will find it as useful and reliable as we do. If you have any questions or comments, please vist our website... http://www.Dimeric.com/ or send us an email... Support@Dimeric.com Release Notes ------------- 2.1.12 - August 11, 2003 -------------- Changes in VDB -------------- * VDB_Base - The VDB log now displays query execution time with 5 decimal places, instead of 3. * VDBSerialColUtil - New methods allow caller to specify how many IDs to acquire. ------------------ Changes in Utility ------------------ * DSMap - New method: IIntfMap.GetValuesForKey. * DSWebServer - dcCompressIfText has been changed to dcCompressIfHtml. * DSList - Performance enhancement in TIntfList.Pack, TVariantList.Pack, and TIntfList.Base_Assign methods. * DSDataExport - New overload of ExportDataSet that takes a THeaderMode value. THeaderMode is a new enumeration that controls whether headers are generated. * DSGUIUtil - New function: BrowseForFolder. * DSDeployUtil - Support for ZLib compression and the RSync protocol. Clients compiled with this enhancement cannot operate with servers compiled without this enhancement. * DSChunkedStreams - A TBufChunkedOutputStream.SendSimpleException now calls ClearBuffer first. TBufChunkedOutputStream.CloseLayer is now defined, and calls FinishOperation. * DSFileUtil - New functions: GetFileDetails, TryProtectFile and TryKillFile. * DSSet - New sverloaded methods of in IIntfSet: GetKeys and GetValues. * DSStringUtil - BoolToYN now returns Char (instead of string). New functions: TrimFilePath and ExtractAndTrimFilePath. * DSDiffUtil - New methods: CalcDiffLines, DiffEx, DiffIntEx. * DSSmartRecStreamer - Allow a string literal to begin with a special character (pound sign). Support + operator to join adjacent string literals. Use + operator when saving, to limit line length. * DSWebUtil - Only compress HTML by default, not all text. IE has trouble when receiving some compressed responses (text/css, for one). - Use IFixedInputStream instead of IRandomInputStream. - Split sending of HTTP request from receiving HTTP response. - Added IWebClient and NewWebClient. - Added NewSocketFromURI. - Changed siguature and added overload of HTTPReceiveResponse. * DSZLibStreams - Don't raise exceptions in the destructor of compression/decompression streams. - Stop using DSStreamUtil. - Bug fix - TDSDecompressStream was not honoring rmAll. * DSStreams - New interface: IByteCountInStream. - Another version of CopyStream - to optionally close one or both streams. - IRandomStream was missing Closed, Close, and CloseLayer. - Flags and Security are now optional in CreateOSFile. - New function: NewTempFile. - New intermediate interface between IInputStream and IRandomInputStream: IFixedInputStream. The new interface is for streams that have a known, fixed size, but which must be read sequentially. One such stream is the content of an HTTP request. - NullInStream.Skip no longer raises an error. - AutoDiscard feature in MaxBytesInStream. - Filter In/Out streams now call CloseLayer in the destructor. - New interface: IBinaryDetectorStream. * DSSmartRecListView - New methods: InternalGetSelectedRecords, InternalSetSelectedRecords, GetSelectedRecord, SetSelectedRecord, GetSelectedRecords, SetSelectedRecords, SelectedRecords, SelectedRecord. - Fix bug in RefreshFromList related to not displaying records marked as osDeleted. - Fix two persistence issues with the list columns (caused by quirks in Windows & VCL). - Enhanced sorting: Support OnGetValue; Reverse sorting when the sort column is clicked a second time. - Preserve selected items after DestroyWnd / CreateWnd are called. - Added HasFocus property. * DSSocket - Fix an infinite loop if an socket gets into an error state while waiting for a socket to become ready (we keep calling select() forever, ignoring the error code it returns). * DSDeployClient - Use IWebClient to reduce the number of socket connections used. * DSPropertyBag - New versions of RemoveDuplicates that take MiniCalc expression(s) and run in O(n) instead of O(n^2). * DSSortUtil - Added QuickSort overloads for open arrays of common types. * DSRSync - Expose the checksums computed by each phase of the RSync process. - Expose the MinRSyncSize constant. * DSMD4 - Eliminate StrToMD4, in favor of DSGenUtil.StrToCardinal128. * DSMD5 - Eliminate StrToMD5, in favor of DSGenUtil.StrToCardinal128. * DSGenUtil - SystemErrorText now calls Trim. - Move TCardinalXXX from DSCheckSum to DSGenUtil. * DSPersistTypes - Support TBoolArray and TCardinalXXX. * DSCheckSum - Cardinal128ToStr now uses the same byte ordering used in the MD4 and MD5 RFCs (even though this conflicts with the byte ordering used by PKZip's CRC-32). - Moved TCardinalXXX, StrToCardinalXXX, and CardinalXXX to DSGenUtil. Documentation ------------- This product includes context-sensitive help that integrates into the Delphi IDE, as well as three separate files: Streams and Persistence.rtf - Detailed introduction to the streaming sub-system of DSTools (DSStreams.pas and DSTypedStreams.pas). MiniCalc.pdf - Detailed reference for MiniCalc, the expression parser/evaluator offered by DSTools (the MiniCalc.pas unit). VDB-Tutorial.pdf - A detailed tutorial for VDB. This is the same information that can be found in the context- sensitive help (minus the reference section), but in a format that is more printer-friendly. This product also ships with a demo application, named VDBDemo. This program illustrates how to perform many common operations, all of which are implemented using both VDB and BDE (for comparison purposes). The demo application is a good place to get started with VDB. VDB Explorer ------------ VDB Explorer was inspired by Borland's SQL Explorer, but has a subset of its functionality. VDB Explorer works with any database that is supported by VDB (not just BDE). It also has a few features missing from SQL Explorer: *) Ability to cut-and-paste in the data-aware grid. *) Ability to export the contents of the data-aware grid to a comma-separated text file. VDB Explorer allows you to browse the tables in a database, and to execute SQL statements against a database. It comes in handy when you need to export data to a plain text file, or simply to test a VDB profile string. You may define new profile strings for use with VDB Explorer in the "VDBExplorer.ini" file. It is also possible to add and modify profile strings interactively within VDB Explorer, but the user interface for doing this is rather quirky (this will be addressed in an upcoming release). The file "VDBExplorer.ini" is only used by VDB Explorer -- your own VDB applications should use their own INI files (or the registry, or whatever other mechanism you prefer). Please make sure that VDBExplorer is not running when you edit the "VDBExplorer.ini" file. Deploying Applications Built With VDB ------------------------------------- VDB features royalty-free application deployment. You may distribute free of charge applications (EXE files) and libraries (DLL and BPL files) built with VDB and/or DSUtil. You may not distribute VDB or DSUtil source code (PAS, INT, DCU and DCP files). See the software license (License.txt) for more information.