TXMLDocument الجديد في بورلاند C + + منشئ
-
20-08-2019 - |
سؤال
هل من الممكن بالنسبة لي لخلق وتدمير 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 ))));
}