سؤال

هل من الممكن بالنسبة لي لخلق وتدمير TXMLDocument بنفسي في ++ باني بورلاند C؟ لقد حاولت ولكن بورلاند تبقي تقول لي أن TXMLDocument هو (ويجب أن يكون) وIDE تمكن المكون.

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

وبعد ذلك أريد أن حفظ ملف Excel آخر. منذ IDE لا يسمح لي حذف وإعادة إنشاء TXMLDocument أحاول حذف مجرد شكل ورقة العمل عليه. عندما أحاول ذلك (في وضع التصحيح) وIDE يذهب إلى وضع الخطوة الخط في التبويب وحدة المعالجة المركزية (تظهر بعض المجمع):

ntdll.DbgBreakPoint:
77A07DFE CC               int 3
77A07DFF C3               ret
هل كانت مفيدة؟

المحلول

وتحتاج إلى القيام بشيء من هذا القبيل بدلا من ذلك:

_di_IXMLDocument Doc = NewXMLDocument(); 

وأنا لا أتذكر التفاصيل المروعة لماذا، ولكن ينبغي أن نشير لكم في الاتجاه الصحيح.

وهناك المزيد من المعلومات على الموقع الشبكي Codegear هنا .

نصائح أخرى

وجرب هذا:

#include <oxmldom.hpp>
#include <XMLDoc.hpp>
#include <xmldom.hpp>
#include <XMLIntf.hpp>


  try
  {
   CoInitialize(0);
   _di_IXMLDocument xmlDoc;
    xmlDoc = LoadXMLData( s1 );
   s1 = xmlDoc->XML->Text;
   CoUninitialize();
   mylog( Fun + String::Format( "ANSW-MSG-XML %s ", ARRAYOFCONST(( s1 ))));
  }
  catch ( Exception & ex )
  {
   mylog( Fun + String::Format( "PARSEXML:ERRORE %s \nmsg:%s",
      ARRAYOFCONST(( ex.Message, cmdMsg ))));
  }
مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top