I think for my immediate needs I have figured out how to get by with
"plain" shared memory-mapped memory & not the fancy compound file
features.
You could try implementing IStream for "plain" shared memory-mapped
memory.
Since IStream is one of those special COM interfaces that can be safely
passed between process boundaries, it could come in handy as there are may
Microsoft functions(e.g., clipboard, shell, compound files, imaging, etc.)
that allow you to use use an IStream as an argument.
Microsoft already has a function to create an IStream from global memory
but not one for "plain" shared memory-mapped memory.
"Jason S" <jmsachs@gmail.com> wrote in message
news:3654de07-631e-4e51-b4e3-2f177f7bce36@f13g2000hsa.googlegroups.com...
On Nov 21, 12:55 am, "Brian Muth" <bm...@mvps.org> wrote:
Jason, I'm deliberately being slow to answer since I'm not an expert in
IStorage or global memory.
However it strikes me that id you implemented your own ILockBytes that
would operate on the memory returned by MapFileView, that you
would be home-free; you could then use StgCreateDocfileOnILockBytes and
you would have your compound file storage object based on
mapped memory. There would be no marshaling involved if implemented
properly.
Perhaps someone else will confirm my opinion.
Brian
Huh. That's an interesting idea, thanks... (sounds a little
daunting :/ but that's to be expected I guess)
I think for my immediate needs I have figured out how to get by with
"plain" shared memory-mapped memory & not the fancy compound file
features.