|The Plasmatech Structured Storage Library harnesses the power of OLE Structured Storage making it easy for Delphi and C++Builder
programmers to store a hierarchy of folders and files inside a single disk file.
Most applications need to read and write data to disk. Delphi and C++Builder provide powerful database support but sometimes a
database is inappropriate due to slow performance, large resource requirements or inappropriate structure. A database would be
obviously inappropriate for a word processor for example.
The serial nature of disk files means that the programmer is often left writing tedious code to convert their
structured memory objects into serial bytes for a file. This is complicated further if you need to store variable
length structures. A change in the size of a structure at the start of the file means you need to rewrite the
entire file. You might leave empty space in the file to accommodate future growth, but then you have to manage the
The Plasmatech Structured Storage Library alleviates this problem by presenting the programmer with a file system
within a file. Just as you have directories and files in a conventional file system,
Structured Storage provides the programmer with directories (known as storages) and files (known as streams) within a file.
An element inside the file can be added, deleted, moved or copied without affecting any other elements. Incremental
saves are now easy to perform, allowing you to save only changed information rather than having to rewrite the whole
file. All allocation within the structured file is managed for you by OLE, significantly reducing your workload.
Microsoft itself uses Structured Storage to implement for example Word and Excel document files. The example code included
with the Plasmatech library allows you to browse the contents of DOC and XLS files (or any structured file) to see how
they do it!
Your users will appreciate your documents being in one file making it easy for them to copy and backup, and making it
easy for you to integrate into Windows Explorer.
A powerful feature of structured storage supported by the Plasmatech library is "transacted" processing. If you open a
part of the file in transacted mode, you can make as many changes to it as you wish and at any time you can decide to
"commit" those changes and make them permanent, or "revert" them - ie. cancel them - regardless of how many changes
you have made.
The Structured Storage Library is more than a simple wrapper around OLE structured storage. It adds significant new functionality:
- Multiple openers are allowed for storages.
- Parent storages are automatically kept open for the lifetime of the child.
- Pathnames are supported for sub-storages and streams. You can open a stream "stg1\stg2\mystream" without having to open stg1 and stg2 manually.
- Optional object leak detection can save many hours of debugging. When your application terminates you are notified if any Structured Storage Library objects remain unfreed.
The Delphi Deli rated the Structured Storage Library Special Value
|Structured Storage Library
We will e-mail you the files on receipt of payment. The evaluation version does not include source code or leak checking and sometimes displays a reminder popup on startup and shutdown.
|Download the evaluation version - ptssl_eval.zip (220K)
|Download a compiled version of the demo program - ptssl_demo.zip (130K)
You might prefer to download this compiled demo program if you don't have time to install the library and build the demo yourself.
|Download a compiled version of the demo program using Delphi 6 run-time packages - ptssl_demovcl60.zip. If you have installed Delphi 6 then you have the required packages.