Ureader.com  
Microsoft software help and Community
   home   |   control panel login   |   archive   |  
 
platform
active.directory
adsi
adsi.iis-admin
base
com_ole
complus_mts
component_svcs
database
directx
gdi
graphics_mm
internet.client
internet.server
internet.server.isapi-dev
localization
mapi
messaging
msi
mslayerforunicode
multimedia
networking
networking.ipv6
sdk_install
security
shell
telephony.tapi_2
telephony.tapi_3
telephony.tsp
telephony.wte
tools
ui
ui_shell
win_base_svcs
win16
  
 
date: Thu, 12 Jan 2006 13:30:45 +1100,    group: microsoft.public.platformsdk.com_ole        back       


Structured Storage and Property Sets Wierd Problem with image file types   
Hi, i'm building an application which uses the structured storage api to 
edit file metadata/property sets.
I've tried DSO file but found a few bugs so i've done my own implementation 
of it in C# with com interop.
However, one thing i'm noticing is that it works well for most file types, 
but graphic files (in my tests i'm using a .jpg) seem to have different 
properties to what my application reads/writes.
ie. if i edit (for example) the  'Title' or 'Author' fields from my 
application for OLE files, and non-ole files, I can see the changes 
reflected in explorer (in details view, with the columns selected).
Windows desktop search/ the IFilters also correctly pick up the edits.
And if i do this from explorer (and refresh the data in my application), my 
application also is correctly using/setting the correct FMTID's.

BUT.. when it comes to images, what is set in explorer, appears only in 
explorer (and indexed in WDS). My application however is reading and writing 
a completely different set of properties.

if i analyse the ADS of the file using the Streamenumerator sample from .Net 
matters Jan 06,
I get this (after i modified the code  to display only the PropertyData 
StreamType:


C:\Temp\dontnetmatterjan06\NetMatters0601\bin\Debug>streamenumerator 
c:\docdrop\
samplejpg.jpg
c:\docdrop\samplejpg.jpg:
        (unnamed)       SecurityData    188
        (unnamed)       Data    602196
        :?DocumentSummaryInformation:$DATA      AlternateData   256
        :?SummaryInformation:$DATA      AlternateData   576
        :{4c8cc155-6c1e-11d1-8e41-00c04fb9386d}:$DATA   AlternateData   0
        (unnamed)       ObjectID        64



I also have these property sets in my indexing server that I can't identify 
as they don't have friendly names, nor are all there property names named 
( I suspect one of them is the pdf IFilter):

14b81da1-0135-4d31-96d9-6cbfc9671a99

13795680-4f98-11d3-96dd-00c04f6888ff

2fa65d5a-cb17-4a14-80ac-6a3efcbcf413 some properties about urgency

6444048f-4c8b-11d1-8b70-080036b11a03 some properties about image resolutions 
stuff

b725f130-47ef-101a-a5f1-02608c9eebac some other file stuff



what i don't understand is:
1. do images have different FMITD's to other files
2. can other applications change or override the FMTIDs with their IFilters 
to store the 'well-known' properties in different sets?, and does explorer's 
properties pages determine which ones to use (if this is the case.. how???).

for the looks of it, its got the normal FMTID that i'm writing to/from, yet 
I can't understand why the shell/explorer displays one set, and i display 
another, when it works fine for other file types. Whats the 'magic' I need 
for images?
if anyone can help, i'd greatly appreciate it.

thanks,
Adam
date: Thu, 12 Jan 2006 13:30:45 +1100   author:   Adam E am

Google
 
Web ureader.com


    COPYRIGHT 2007, YARDI TECHNOLOGY LIMITED, ALL RIGHT RESERVE  |   contact us