إنشاء تنسيق ملف يشبه مستند MS Office لفضح خصائص المستند

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

سؤال

"مستندات" تطبيقنا هي ملفات ثنائية واحدة.

لقد سأل عملاؤنا عما إذا كان بإمكاننا إضافة خصائص مستندات تشبه MS Office إلى ملفات المستندات الخاصة بنا بحيث يكون من الأسهل على المستخدمين إدارتها. من خلال إدارة أسهل ، أعني قدرة Windows Explorer على عرض خصائص المستند الشائعة في تلميحات الأدوات.

يبدو أن بحثي يشير إلى أننا يجب أن نعتبر التخزين منظم OLE أساسًا لملفات البيانات الخاصة بنا. لقد رأيت هذه التقنية موصوفة بدلاً من ذلك على أنها تخزين منظم MS ، وتنسيقات مستندات OLE 2 ، وبيانات تعريف ملفات Windows.

إن مخاوفي بشأن استخدام التخزين المهيكلة OLE هو أنه لا يبدو أن Office 2007 أو 2010 استخدام تنسيق الملف بعد الآن ، وتتطلب التخزين المهيكلة OLE تسجيل مكون DSOfile.DLL Activex الذي لن يتمكن العديد من عملائنا من استخدامه بسبب يقومون بتشغيل برنامجنا على محطات العمل المغلقة حيث لا يتمتع المستخدمون بحقوق المسؤول لتثبيت البرامج. (برنامج التطبيق الخاص بنا هو نشر XCOPY خالص).

سوف نقدر سماع الأفكار حول خياراتنا.

شكرا لك ، مالكولم

هل كانت مفيدة؟

المحلول

أنا متأكد من أن أفضل إجابة لك هي استخدام مستند Ole Compound.

ربما تكون Microsoft قد توقفت عن استخدام هذا ، لكن ذلك لأنهم ذهبوا إلى تنسيق ملف XML. ما لم تكن على استعداد للتحويل من تنسيق الملف الحالي إلى XML ، لا أعتقد أن المعيار الجديد للعلامات سيكون مثيرًا لك.

يمكنك جعل التطبيق الخاص بك يحفظ ملفين ، XML واحد فقط للعلامات والبيانات الثنائية ، ولكن هذا يعني مجرد ألم للمستخدمين. كانت النقطة الكاملة لتنسيق مستند OLE Compound هي السماح "ملفات" متعددة ملزمة معًا في ملف واحد.

وأيضًا ، سأكون مندهشًا جدًا إذا لم يكن Windows الحديثة لديه دعم لمستندات مركب Ole مدمجة بشكل صحيح. . لماذا يتطلب Windows XP أو الأحدث ملفًا إضافيًا .DLL ليتمكن من تحليل العلامات؟

أفضل شيء في استخدام تنسيق مستند OLE Compound هو أن علامات المستخدم ستذهب مع الملف ، بغض النظر عن ذلك: إذا كتب المستخدم الملف إلى خادم ملفات ، إذا قام المستخدم بإسقاط الملف في بريد إلكتروني ، إذا كان المستخدم يحترق الملف إلى قرص مضغوط ، أيا كان. (كانت الإجابة الأولى التي كتبتها ، والتي قمت بحذفها ، سيئة ؛ حتى لو كان قد نجح ، فقد وضع علامات المستخدم خارج الملف ، وكلما فكرت في الأمر ، كلما كنت أقل سعادة في هذا الفكر.)

لذلك ، أقترح أن تحاول إنشاء مستند مركب OLE ، ثم انظر فقط إلى الملف في Windows Explorer في تثبيت قياسي لنظام التشغيل Windows XP. معرفة ما إذا كان يمكنك رؤية العلامات دون الحاجة إلى تنزيل وتثبيت ActiveX .dll. أنا متأكد من أنها ستعمل. (لكنني لم أعد أفعل Windows كثيرًا بعد الآن ، لذا لا يمكنني اختبار هذا من أجلك).

تحرير: حسنًا ، لقد أجريت اختبارًا. أنا في العمل ولدي جهاز كمبيوتر Windows هنا. لقد استخدمت Word 2007 لوضع مستند ، وحفظت المستند ككلمة 97. نظرت إلى خصائص المستند في Windows Explorer ؛ كان اسم المؤلف مرئيًا في العلامات. لقد أضفت نصًا إلى "تعليقات" ثم فتحت الملف في Word 2007. تمكنت بعد ذلك من عرض التعليقات (انقر على "Office" Icon Circle في أعلى اليسار ، اختر "إعداد" ، اختر "خصائص").

لذا ، فإن نظريتي لديها بعض الأدلة لدعمها: لم يكن عليّ تثبيت أي برنامج خاص ، عملت Windows Explorer فقط مع ملف كلمة تنسيق مستند Ole Compound مع العلامات. (قد يكون Microsoft Office يقوم بتثبيت بعض .DLL الخاص لاستخدام العلامات مع Windows Explorer ؛ لقد قمت بتثبيت Microsoft Office 2007 على هذا الكمبيوتر. ولكن من المحتمل أن يكون لدى عملائك Microsoft Offic أعتقد أن هذا هو الحل الأفضل.)

أقترح عليك البحث عن Google عن "تنسيق مستند Ole Compound" ومعرفة كيفية كتابة هذا التنسيق. لقد وجدت مثالاً على كيفية قراءة العلامات هنا: http://support.microsoft.com/kb/186898

نصائح أخرى

على Windows 2000 أو أعلى ، بدلاً من استخدام مستند OLE Compound ، يمكنك أيضًا تخزين معلومات الصيف في بيانات تعريف ملف NTFS لذلك يمكن للتطبيقات مثل Windows Explorer أو Windows Desktop Search استخدام السمات في صفحات الخصائص وتلميحات الأدوات والأعمدة والبحث.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top