Creazione di un formato di file di documento simile a MS Office per esporre le proprietà del documento

StackOverflow https://stackoverflow.com/questions/1996162

Domanda

"documenti" della nostra applicazione sono singoli file binari.

I nostri clienti hanno chiesto se possiamo aggiungere le proprietà dei documenti MS Office-come ai nostri file di documenti in modo che siano più facili agli utenti di gestire. Con più facile da gestire, voglio dire la possibilità per Windows Explorer per visualizzare le proprietà comuni dei documenti nelle descrizioni comandi.

La mia ricerca sembra indicare che dovremmo considerare OLE di archiviazione strutturata come base per i nostri file di dati. Ho visto questa tecnica alternativa descritto come MS archiviazione strutturata, OLE 2 Compound Document Formati e metadati del file di Windows.

Le mie preoccupazioni sull'utilizzo di OLE di archiviazione strutturata è che non sembra che Office 2007 o 2010 utilizzano questo formato file qualsiasi di stoccaggio di più e OLE strutturato richiede la registrazione di un componente Dsofile.dll ActiveX che molti dei nostri clienti non saranno in grado da usare perché corrono il nostro software sulle workstation bloccato in cui gli utenti non hanno diritti di amministratore per installare il software. (Il nostro software applicativo è una distribuzione pura XCOPY).

Gradirei sentire idee su che cosa sono le nostre opzioni.

Grazie, Malcolm

È stato utile?

Soluzione

Sono piuttosto sicuro che la risposta migliore è quella di utilizzare il documento composto OLE.

Microsoft potrebbe aver smesso di usare questo, ma che è perché sono andati a un formato di file XML. A meno che non si è disposti a convertire da formato file corrente in XML, non credo che il nuovo standard per i tag sarà interessante per voi.

Si potrebbe rendere l'applicazione salvare due file, l'XML uno solo per tag e il binario uno dei dati, ma che semplicemente significa dolore per gli utenti. Il punto centrale di formato di documento composto OLE è stato quello di consentire a più "file" legati insieme in un unico file.

Inoltre, sarei molto sorpreso se moderno di Windows non ha avuto il supporto per i documenti composti OLE costruito a destra in. Sono abbastanza sicuro che fin da Microsoft Word 6.0, oltre un decennio fa, i documenti sono stati salvati in questa OLE formato di documento composto. Perché Windows XP o più recente richiederebbe un file DLL in più per essere in grado di analizzare i tag fuori?

La cosa migliore di utilizzare il formato di documento composto OLE è che le etichette utente andrà con il file, non importa cosa: se l'utente scrive il file a un file server, se l'utente rilascia il file in una e-mail, se l'utente brucia il file su un CD, qualsiasi cosa. (La prima risposta che ho scritto, che ho cancellato, era male;., Anche se avesse funzionato sarebbe messo i tag degli utenti al di fuori del file, e più ci penso, meno sono felice al pensiero)

Quindi, vi suggerisco di provare a creare un documento composto OLE, e poi basta guardare il file in Esplora risorse in una installazione standard di Windows XP. Vedere se è possibile vedere i tag senza bisogno di scaricare e installare un ActiveX DLL. Sono abbastanza sicuro che funzionerà. (Ma io non davvero di Windows più molto, quindi non posso comodamente verificare questa per voi.)

EDIT: Okay, ho appena fatto un test. Sono al lavoro e ho un computer Windows qui. Ho usato Word 2007 per fare un documento, e ho salvato il documento come formato Word 97. Ho guardato le proprietà del documento in Esplora risorse; il nome dell'autore era visibile nei tag. Ho aggiunto il testo a "commenti" e quindi aperto il file in Word 2007. Mi è stato poi in grado di visualizzare i commenti (cliccare sulla "ufficio" icona cerchio in alto a sinistra, scegliere "Preparatevi", selezionare "Proprietà").

Quindi, la mia teoria ha qualche prova a sostegno di essa: non ho dovuto installare alcun software speciale, il mio Windows Explorer appena finito di lavorare con il file in formato Word composto OLE con i tag. (Potrebbe essere che Microsoft Office installa un certo DLL speciale per utilizzare i tag con Esplora risorse di Windows,. Io ho Microsoft Office 2007 installato su quel computer, ma i clienti possono avere Microsoft Office anche, quindi, anche se questo è il caso, ho ancora che questa sia la soluzione migliore.)

Vi suggerisco di ricerca di Google per "formato di documento composto OLE" e vedere come scrivere questo formato. Ho trovato un esempio di come leggere i tag qui: http://support.microsoft.com/kb/ 186898

Altri suggerimenti

In Windows 2000 o superiore, invece di utilizzare OLE documento composto, è possibile anche memorizzare le informazioni estivo nel file di metadati NTFS così le applicazioni come Windows Explorer o Windows Desktop Search possono utilizzare gli attributi di proprietà pagine, i suggerimenti, le colonne e la ricerca.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top