G
Guest
I am using Stephan’s latest code to extract OLE field (containing Photos) to
disk. In the function ‘fGetContentsStream’ in module ‘modGetContentsStream’,
the code returns false if it finds out the ole is a linked object. In the
same module, there is another function ‘fInventory’, which extracts the
original full file path from the ole header. I am using these two functions
to extract a 200G OLE database to disk, one for embedded object and the other
for linked object. The problem occurs when the OLE field is a linked object
and the extracted file path is no longer valid, which means the original
linked file has been moved or no longer exists on the disk. But from the
access front-end, I can still view the photo in the form, even though I
cannot edit the photo (if it is a valid file path, I can edit the photo).
And the datalength of the linked ole object is even bigger than the embedded
one. So in theory the photo is somehow saved in the ole field. My question
is: is there a way to extract the original content of the photo from the
linked ole object, for example, modifying the function ‘fGetContentsStream’,
which changes the size of the header or the offset of the real content.
I am stuck here. Help!!! I expect that Stephen can sort this out, I hope he
reads this and can help.
disk. In the function ‘fGetContentsStream’ in module ‘modGetContentsStream’,
the code returns false if it finds out the ole is a linked object. In the
same module, there is another function ‘fInventory’, which extracts the
original full file path from the ole header. I am using these two functions
to extract a 200G OLE database to disk, one for embedded object and the other
for linked object. The problem occurs when the OLE field is a linked object
and the extracted file path is no longer valid, which means the original
linked file has been moved or no longer exists on the disk. But from the
access front-end, I can still view the photo in the form, even though I
cannot edit the photo (if it is a valid file path, I can edit the photo).
And the datalength of the linked ole object is even bigger than the embedded
one. So in theory the photo is somehow saved in the ole field. My question
is: is there a way to extract the original content of the photo from the
linked ole object, for example, modifying the function ‘fGetContentsStream’,
which changes the size of the header or the offset of the real content.
I am stuck here. Help!!! I expect that Stephen can sort this out, I hope he
reads this and can help.