How to Wrap OLE Structured Storage
-
Someone still remembers the COM Compound File Binary format? Microsoft used to store their office files in this format. It is a great format, providing a FAT-like file system within a single file, via storages (directories) and streams (files). Microsoft's attempts to port Structured Storage technology to .NET were... sloppy, to put it friendly. For instance can you define sector sizes not only of 512 bytes, but also of 4,096 bytes. You can instruct the .NET code to use 4k, but when it doesn't work and you dig into the reference source you'll find, that they accept and comment on the argument, but do not use it. At all. I created a fully functional wrapper from scratch. It took some weeks to get this one right, but I'm glad to share the heavily documented results with you. Google Drive: Google Drive[^] (Rev. 4354) Chapter 4.5 (marginal notes 662 ff.): Structured Storages (byte access only as in the original) Chapter 4.6 (mn. 1124 ff.): General Structured Storages (added support for strings and all value types) Let me know what use you make of it. General design reviews are welcome. If there's a better forum, please let me know. I'm new here (SO refugee).
-
Someone still remembers the COM Compound File Binary format? Microsoft used to store their office files in this format. It is a great format, providing a FAT-like file system within a single file, via storages (directories) and streams (files). Microsoft's attempts to port Structured Storage technology to .NET were... sloppy, to put it friendly. For instance can you define sector sizes not only of 512 bytes, but also of 4,096 bytes. You can instruct the .NET code to use 4k, but when it doesn't work and you dig into the reference source you'll find, that they accept and comment on the argument, but do not use it. At all. I created a fully functional wrapper from scratch. It took some weeks to get this one right, but I'm glad to share the heavily documented results with you. Google Drive: Google Drive[^] (Rev. 4354) Chapter 4.5 (marginal notes 662 ff.): Structured Storages (byte access only as in the original) Chapter 4.6 (mn. 1124 ff.): General Structured Storages (added support for strings and all value types) Let me know what use you make of it. General design reviews are welcome. If there's a better forum, please let me know. I'm new here (SO refugee).
Can I have a napkin to wipe my a$ş?