سؤال

أسئلة موجزة:

  1. هل تعرف تطبيقًا خفيف الوزن يمكنه حفظ الملفات بتنسيق الإصدار 1.6 RTF؟
  2. هل تعرف ما هو إصدار "تنسيق النص الغني للتطبيقات القديمة" لـ RTF AbiWord؟
  3. هل تعرف طريقة لفحص ملف RTF وتحديد إصدار RTF الذي يتم ترميزه تحت؟
  4. هل تعرف أي DLL يصف تنسيق RTF على جهاز Windows NT 4.0 وما إذا كان يمكن ترقيته؟

لديّ تطبيق MS Visual C ++ 6.0 MFC يعمل على جهاز Windows NT 4.0 المضمن. يوفر التطبيق مساعدة داخل التطبيق باستخدام MFC's Cricheditview فئة لسحب النص من RTF ملف يسمى help.rtf. يتم حفظ ملف المساعدة كإصدار RTF 1.6. لقد تم تحريره دائمًا باستخدام MS Word 2000 أو إصدار WordPad الذي يأتي مع Windows NT 4.0.

تكمن المشكلة في أن محطات عمل المطورين لدينا تميل إلى وجود Windows XP (وإصدارها من WordPad) و Office 2003 أو أفضل ، وكلاهما يستخدم إصدارات أكثر حداثة من RTF من 1.6 يمكن تحرير الملف وإعادة تصويره في هذا التنسيق عفا عليه الزمن. إذا تم استخدام إصدار أحدث من Word أو WordPad لحفظ الملف ، فسيتم حفظه كإصدار أحدث من RTF. ثم ، عند تشغيل التطبيق على جهاز NT ، لا يتم عرض نص المساعدة بشكل صحيح. (على الرغم من أن التطبيق نفسه يتم تشغيله على جهاز XP ، فإن نص المساعدة يتم عرضه بشكل صحيح.)

لذا ، أنا أتطلع إلى القيام بأحد أمرين:

  1. ابحث عن تطبيق (ويفضل أن أخف وزناً من Word 2000) من شأنه حفظ الملفات بتنسيق الإصدار 1.6 RTF ، والتي يمكننا استخدامها للتحرير المستقبلي لملف المساعدة.
  2. اكتشف طريقة للحصول على جهاز NT لقراءة الإصدارات اللاحقة من RTF بشكل صحيح.

على الجبهة الأولى ، حاولت abiword, التي لديها ملف "تنسيق نص غني للتطبيقات القديمة" الخيار ، لكن لا يمكنني معرفة إصدار RTF هذا الخيار. هل تعرف ما هو الإصدار هذا؟ لسوء الحظ ، ليس من الواضح بسهولة من البيانات الوصفية في الملف ، الذي يقول فقط "RTF1" ، لكل مقطع لطيف من جميع إصدارات Spec RTF. هل هناك طريقة لتحليل ملف RTF وتحديد إصدار RTF الذي يتم ترميزه تحت؟

يستمر معيار RTF الموصوف في مواصفات RTF هذه ، على الرغم من عنوانه باسم الإصدار 1.6 ، في التوافق بشكل نحلي مع إصدار مواصفات RTF 1. لذلك ، لا يزال يجب إبعاد المعلمة الرقمية N لكلمة التحكم rtf كـ 1.

في المقدمة الثانية ، أتساءل عما إذا كان هناك بعض DLL يمكنني فقط تحديثه حتى يتعرف Windows NT على الإصدار الأحدث من التنسيق. هل تعرف أي DLL يصف تنسيق RTF وما إذا كان يمكن ترقيته؟

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

المحلول 2

بعد سلسلة من التلميحات التي بدأت مع مارك رانسوم إجابه, ، انتهى بي الأمر بنسخ Riched20.dll و Riched32.dll من C: Windows System32 على جهاز XP الخاص بي إلى C: Winnt System32 على جهاز NT. بعد أن فعلت ذلك ، تم تحرير ملفات RTF باستخدام WordPad أو Word على جهاز XP الذي تم تقديمه بشكل صحيح على كل من WordPad وتطبيقي على جهاز NT.

نصائح أخرى

أعتقد أن تنسيق التحرير الغني يتم تحديده من خلال التحكم في التحرير الغني نفسه. لن أحاول ترقية DLL ، لأن هناك الكثير الذي يمكن أن ينكسر.

راجع ملاحظة MSDN هذه للحصول على تلميحات حول استخدام الإصدار اللاحق من عنصر تحكم Rich Edit. يجب أن يكون الإصدار 2.0 متاحًا في NT 4.0.

http://msdn.microsoft.com/en-us/library/tt1cfb9f(vs.80).aspx

قد تحاول نسخ إصدار WordPad من نظام NT الخاص بك ومعرفة ما إذا كان ذلك يعمل كبديل.

أول شيء يتبادر إلى الذهن هو WordPad. إنه على كل آلة وخفيفة الوزن حقًا في RTF. لقد وجدت أنه أفضل بكثير من Word في العديد من مهام RTF البسيطة.

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