<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[XML &amp;amp; C++]]></title><description><![CDATA[<p>Hey Leute...</p>
<p>und zwar hänge ich gerade ziemlich fest, da ich ein riesiges Problem habe. Folgendes: Ich soll eine DLL schreiben, die aus ner XML Datei Daten ausliest. Bzw. eigentlích soll die DLL nur die Funktionen auslesen. Soweit so gut. Oder auch nicht. Da ich nämlich Null Plan vom DLL erstellen habe bzw. vom XML -Dateien auslesen. Ok, das mit der DLL erzeugen habe ich mir in den letzten paar Tagen mehr oder weniger angeeignet. Das ist also nicht mehr unbedingt ein Problem. Aber bei diesen schei* XML - Dateien komme ich absolut nicht weiter. Ich hab's schon mit irgendwelchen Parsern wie TinyXML und Xerces probiert, aber das ging alles in die Hose. Nun sitz ich da un weiß nicht weiter...</p>
<p>Kann mir von euch evtl. jemand helfen? Weiß irgendwer wie man XML Strukturen ausliest...? Also ganz hilfreich wäre es ja, wenn mir jemand n Beispielprogramm oder sowas posten könnte. Da ich über google bisher ni grad das Richtige gefunden habe....</p>
<p>Danke schon mal im Voraus für jede Hilfe...!!!!!!</p>
<p>bye Matt</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/180340/xml-amp-c</link><generator>RSS for Node</generator><lastBuildDate>Fri, 03 Jul 2026 20:03:03 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/180340.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 01 May 2007 14:53:57 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to XML &amp;amp; C++ on Tue, 01 May 2007 14:53:57 GMT]]></title><description><![CDATA[<p>Hey Leute...</p>
<p>und zwar hänge ich gerade ziemlich fest, da ich ein riesiges Problem habe. Folgendes: Ich soll eine DLL schreiben, die aus ner XML Datei Daten ausliest. Bzw. eigentlích soll die DLL nur die Funktionen auslesen. Soweit so gut. Oder auch nicht. Da ich nämlich Null Plan vom DLL erstellen habe bzw. vom XML -Dateien auslesen. Ok, das mit der DLL erzeugen habe ich mir in den letzten paar Tagen mehr oder weniger angeeignet. Das ist also nicht mehr unbedingt ein Problem. Aber bei diesen schei* XML - Dateien komme ich absolut nicht weiter. Ich hab's schon mit irgendwelchen Parsern wie TinyXML und Xerces probiert, aber das ging alles in die Hose. Nun sitz ich da un weiß nicht weiter...</p>
<p>Kann mir von euch evtl. jemand helfen? Weiß irgendwer wie man XML Strukturen ausliest...? Also ganz hilfreich wäre es ja, wenn mir jemand n Beispielprogramm oder sowas posten könnte. Da ich über google bisher ni grad das Richtige gefunden habe....</p>
<p>Danke schon mal im Voraus für jede Hilfe...!!!!!!</p>
<p>bye Matt</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1276975</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1276975</guid><dc:creator><![CDATA[M@tt]]></dc:creator><pubDate>Tue, 01 May 2007 14:53:57 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Tue, 01 May 2007 14:57:27 GMT]]></title><description><![CDATA[<p>Bei TinyXML in der Datei xmltest.cpp</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1276978</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1276978</guid><dc:creator><![CDATA[bye]]></dc:creator><pubDate>Tue, 01 May 2007 14:57:27 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Tue, 01 May 2007 15:04:20 GMT]]></title><description><![CDATA[<p>Das hilft mir irgendwie nich wirklich weiter.... Die Datei an und für sich hat ich schon mal als Test laufen, aber die zeigt mir nicht das, was ich sehen will. Sprich die einzelnen Daten. Außerdem hab ich glabe gelesen, dass TinyXML keine DTD's verarbeitet. Und meine XML ist an eine gebunden....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1276984</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1276984</guid><dc:creator><![CDATA[M@tt]]></dc:creator><pubDate>Tue, 01 May 2007 15:04:20 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Tue, 01 May 2007 15:18:09 GMT]]></title><description><![CDATA[<p><a href="https://duckduckgo.com/?q=isbn+3826616480&amp;cppnetbooks" rel="nofollow">XML und XSLT mit C++ | ISBN: 3826616480</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1276991</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1276991</guid><dc:creator><![CDATA[Werbe Unter Brechung]]></dc:creator><pubDate>Tue, 01 May 2007 15:18:09 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Tue, 01 May 2007 15:24:31 GMT]]></title><description><![CDATA[<p>Gibts das auch als ebook?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1276996</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1276996</guid><dc:creator><![CDATA[M@tt]]></dc:creator><pubDate>Tue, 01 May 2007 15:24:31 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Tue, 01 May 2007 16:50:52 GMT]]></title><description><![CDATA[<p>hat nich irgendjemand ne lösung??? ist echt dringend....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277061</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277061</guid><dc:creator><![CDATA[M@tt]]></dc:creator><pubDate>Tue, 01 May 2007 16:50:52 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Tue, 01 May 2007 16:58:47 GMT]]></title><description><![CDATA[<p>Wirklich &quot;DLL&quot; - also Windows ?</p>
<p>Gut : MSXML SDK</p>
<p>Der Parser ist hervorragend.</p>
<p>Falls bei Dir ( =&gt; Systemsetuerung =&gt; Software ) keins installiert ist:</p>
<p>Such Dir mal die Version(en) der msxml*.dll heraus die auf Deinem System installiert / sind und lad Dir ein passendes MSXML SDK von MS herunter.</p>
<p>Da drin ist ein gute Doku zu SAX und DOM und wie man das mit ATL/COM/C++ einsetzt.</p>
<p>Grüsse</p>
<p>*this</p>
<p>P.S.: Was meinst Du eigentlich mit &quot;Funktionen auslesen&quot; ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277066</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277066</guid><dc:creator><![CDATA[Gast++]]></dc:creator><pubDate>Tue, 01 May 2007 16:58:47 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Tue, 01 May 2007 17:07:57 GMT]]></title><description><![CDATA[<p>thx werds mal probieren...</p>
<p>achso... meinte natürlich die funktionen in der dll bereitstellen, nicht auslesen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277071</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277071</guid><dc:creator><![CDATA[M@tt]]></dc:creator><pubDate>Tue, 01 May 2007 17:07:57 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Tue, 01 May 2007 17:15:07 GMT]]></title><description><![CDATA[<p>Ansonsten TinyXML</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277075</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277075</guid><dc:creator><![CDATA[Erhard Henkes]]></dc:creator><pubDate>Tue, 01 May 2007 17:15:07 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Tue, 01 May 2007 17:15:39 GMT]]></title><description><![CDATA[<p>thx werds mal probieren...</p>
<p>achso... meinte natürlich die funktionen in der dll bereitstellen, nicht auslesen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277076</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277076</guid><dc:creator><![CDATA[M@tt]]></dc:creator><pubDate>Tue, 01 May 2007 17:15:39 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Tue, 01 May 2007 17:17:14 GMT]]></title><description><![CDATA[<p>Erhard Henkes schrieb:</p>
<blockquote>
<p>Ansonsten TinyXML</p>
</blockquote>
<p>Willste mich verarschen? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277077</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277077</guid><dc:creator><![CDATA[M@tt]]></dc:creator><pubDate>Tue, 01 May 2007 17:17:14 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Tue, 01 May 2007 19:02:57 GMT]]></title><description><![CDATA[<p>Es gibt recht viele XML-Parser für C++. Das Xerces bei dir nicht funktioniert, ist komisch. Denn es muß funktionieren, da es ein weit verbreiteter Parser ist und keine Eintagsfliege.</p>
<p>Völlig unabhängig davon, gibt es von MS mittlerweile zwei XML-Parser. Den altbekannten MSXML und seit neuestem den XmlLite, der extra für C++ entwickelt wurde, da MSXML nicht für C++ spezialisiert ist.</p>
<p><a href="http://msdn.microsoft.com/msdnmag/issues/07/04/Xml/" rel="nofollow">http://msdn.microsoft.com/msdnmag/issues/07/04/Xml/</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277150</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277150</guid><dc:creator><![CDATA[Artchi]]></dc:creator><pubDate>Tue, 01 May 2007 19:02:57 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Wed, 02 May 2007 07:38:16 GMT]]></title><description><![CDATA[<p>Artchi schrieb:</p>
<blockquote>
<p>Es gibt recht viele XML-Parser für C++. Das Xerces bei dir nicht funktioniert, ist komisch. Denn es muß funktionieren, da es ein weit verbreiteter Parser ist und keine Eintagsfliege.</p>
<p>Völlig unabhängig davon, gibt es von MS mittlerweile zwei XML-Parser. Den altbekannten MSXML und seit neuestem den XmlLite, der extra für C++ entwickelt wurde, da MSXML nicht für C++ spezialisiert ist.</p>
<p><a href="http://msdn.microsoft.com/msdnmag/issues/07/04/Xml/" rel="nofollow">http://msdn.microsoft.com/msdnmag/issues/07/04/Xml/</a></p>
</blockquote>
<p>Suchte der OP nicht was mit DTD Unterstützung? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /></p>
<p>Ernsthaft:</p>
<p>Versteh ich das richtig kein DOM, kein &quot;echtes SAX&quot; sondern so'n abgespecktes pull-Modell ??!?<br />
Btw was ist &quot;Systemeigenes C++&quot; ?!?</p>
<p>=&gt; Was soll das denn sein? &lt;=</p>
<p>Grüsse</p>
<p>Gast++</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277307</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277307</guid><dc:creator><![CDATA[Gast++]]></dc:creator><pubDate>Wed, 02 May 2007 07:38:16 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Wed, 02 May 2007 07:49:10 GMT]]></title><description><![CDATA[<p>Dieser Thread wurde von Moderator/in <a href="http://www.c-plusplus.net/forum/profile-var-mode-is-viewprofile-and-u-is-403.html" rel="nofollow">HumeSikkins</a> aus dem Forum <a href="http://www.c-plusplus.net/forum/viewforum-var-f-is-15.html" rel="nofollow">C++</a> in das Forum <a href="http://www.c-plusplus.net/forum/viewforum-var-f-is-8.html" rel="nofollow">Rund um die Programmierung</a> verschoben.</p>
<p>Im Zweifelsfall bitte auch folgende Hinweise beachten:<br />
<a href="http://www.c-plusplus.net/forum/viewtopic-var-t-is-39405.html" rel="nofollow">C/C++ Forum :: FAQ - Sonstiges :: Wohin mit meiner Frage?</a></p>
<p><em>Dieses Posting wurde automatisch erzeugt.</em></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277313</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277313</guid><dc:creator><![CDATA[C++ Forumbot]]></dc:creator><pubDate>Wed, 02 May 2007 07:49:10 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Wed, 02 May 2007 10:09:55 GMT]]></title><description><![CDATA[<blockquote>
<p>Suchte der OP nicht was mit DTD Unterstützung?</p>
</blockquote>
<p>Das der Fragesteller umfangreichen DTD-Support benötigt, hab ich übersehen (stand im ersten Posting nicht drin). Aber XmlLite bietet minimalen DTD-Support an, wenn auch nicht in dem Umfang wie MSXML:</p>
<blockquote>
<p>DTD Support<br />
Document Type Definition (DTD) support is limited to entity expansion and default attributes.</p>
<p>When a DTD is used, DTD default attributes are returned just as if they were normal attributes; the only difference is that default attributes return TRUE when the IsDefault method is called.</p>
<p>For example with a DTD:</p>
<p>&lt;!ATTLIST myElement myAttr CDATA &quot;123&quot;&gt;</p>
<p>If the myAttr attribute on the myElement element is not defined in the XML stream, it will be given the default value of 123.</p>
</blockquote>
<p>Ich bin aber kein XML-Speci, weshalb ich dazu auch weiter nichts sagen kann.</p>
<blockquote>
<p>Versteh ich das richtig kein DOM, kein &quot;echtes SAX&quot; sondern so'n abgespecktes pull-Modell ??!?</p>
</blockquote>
<p>Und, warum nicht? Ich muß beruflich auch mit XML rumhantieren, habe aber selber noch nie SAX benötigt. Komme für meine Anwendungen mit DOM voll und ganz aus. Und unechtes SAX gibt es ja wohl kaum, oder? Es gibt DOM und SAX. Warum bewertest du das? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
<blockquote>
<p>Btw was ist &quot;Systemeigenes C++&quot; ?!?</p>
</blockquote>
<p>Ja, der Artikel ist ein wenig strange, was die Begrifflichkeit angeht. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> Aber XmlLite ist nunmal eine reine C++-Library, im Gegensatz zu MSXML (die man von jeder COM-fähigen Sprache aus nutzen kann). Und laut MS ist XmlLite besonders auf Performance und einfache Benutzung getrimmt, dafür gibts halt weniger Features. (es benötigt nicht mal ein .NET-Installation!) Wer mehr Features benötigt und/oder kein C++ benutzt, kann auf eine andere Library ausweichen (MSXML oder .NET-Framework).<br />
Insofern ist &quot;Systemeigenes C++&quot; nicht falsch, es ist halt für einen C++ler einfacher zu benutzen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277399</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277399</guid><dc:creator><![CDATA[Artchi]]></dc:creator><pubDate>Wed, 02 May 2007 10:09:55 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Wed, 02 May 2007 10:08:09 GMT]]></title><description><![CDATA[<p>libxml++ ist sehr umfangreich was die Funktionalität anbelangt (DTDs et al)</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277415</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277415</guid><dc:creator><![CDATA[rüdiger]]></dc:creator><pubDate>Wed, 02 May 2007 10:08:09 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Wed, 02 May 2007 12:39:54 GMT]]></title><description><![CDATA[<p>ok hab mir jetzt mal libxml++ runtergeladen. leider komme ich auch hier nicht wirklich weiter, da ich mit der hilfe nicht wirklich was anfangen kann. (und das liegt nicht am englisch). könnte evt. jemand nen beispiel code posten für libxml++?<br />
achso... xerces hab ich jetzt zum &quot;laufen&quot; bekommen, ist aber im prinzip das gleiche wie bei libxml++...</p>
<p>oder weiß evtl. jemand ob es schon irgendwelche beispiel-programme in c++ gibt, die xml daten auslesen?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277519</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277519</guid><dc:creator><![CDATA[M@tt]]></dc:creator><pubDate>Wed, 02 May 2007 12:39:54 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Wed, 02 May 2007 12:54:07 GMT]]></title><description><![CDATA[<p><a href="http://libxmlplusplus.sourceforge.net/docs/manual/html/ar01s02.html#id2472569" rel="nofollow">http://libxmlplusplus.sourceforge.net/docs/manual/html/ar01s02.html#id2472569</a><br />
<a href="http://www.google.com/codesearch" rel="nofollow">http://www.google.com/codesearch</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277528</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277528</guid><dc:creator><![CDATA[rüdiger]]></dc:creator><pubDate>Wed, 02 May 2007 12:54:07 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Wed, 02 May 2007 12:56:11 GMT]]></title><description><![CDATA[<p>ähm ja wie ich schon sagte.... die hilfe bring mich nicht wirklich weiter. und googlen tu ich schon seit stunden....</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277531</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277531</guid><dc:creator><![CDATA[M@tt]]></dc:creator><pubDate>Wed, 02 May 2007 12:56:11 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Wed, 02 May 2007 13:05:43 GMT]]></title><description><![CDATA[<p>M@tt schrieb:</p>
<blockquote>
<p>ähm ja wie ich schon sagte.... die hilfe bring mich nicht wirklich weiter. und googlen tu ich schon seit stunden....</p>
</blockquote>
<p>Dann versuch dein Problem doch näher zu beschreiben. Das Beispiel zeigt doch, wie man eine XML-Datei parst und die Nodes auswertet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277537</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277537</guid><dc:creator><![CDATA[rüdiger]]></dc:creator><pubDate>Wed, 02 May 2007 13:05:43 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Wed, 02 May 2007 15:08:52 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/9923">@M</a>@tt:</p>
<p>M@tt schrieb:</p>
<blockquote>
<p>ähm ja wie ich schon sagte.... die hilfe bring mich nicht wirklich weiter. und googlen tu ich schon seit stunden....</p>
</blockquote>
<p>Hast Du MSXML denn jetzt mal probiert?<br />
Brauchst ein kleines Demo dafür?</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/1463">@Artchi</a>:</p>
<p>Artchi schrieb:</p>
<blockquote>
<p>Und unechtes SAX gibt es ja wohl kaum, oder? Es gibt DOM und SAX. Warum bewertest du das? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f615.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--confused_face"
      title=":confused:"
      alt="😕"
    /></p>
</blockquote>
<p>Ich ahnte schon irgendwie dass da noch was kommt... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /><br />
Um die Erklärung wollte ich mich eigentlich drücken:<br />
SAX2 nutzt ein Push-Modell; dazu gehören Events und Handler - letztere also als callbacks oder Ableitung einer Handlerklasse implementiert.<br />
So wie ich die Doku verstehe ist dieses Read() als Ersatz gedacht - man holt sich eine Node und kann dann damit verfahren wie man's braucht.<br />
Das ist zwar an Sax angeehnt aber halt ein Pull-Parser.</p>
<p>Und DOM gibt's gar nicht.</p>
<p>Also : ! ( SAX || DOM ).Oder?</p>
<p>Artchi schrieb:</p>
<blockquote>
<blockquote>
<p>Btw was ist &quot;Systemeigenes C++&quot; ?!?</p>
</blockquote>
<p>Ja, der Artikel ist ein wenig strange, was die Begrifflichkeit angeht. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /> Aber XmlLite ist nunmal eine reine C++-Library, im Gegensatz zu MSXML (die man von jeder COM-fähigen Sprache aus nutzen kann).</p>
</blockquote>
<p>Auch das versteh ich nicht - es ist doch COM, oder nicht?<br />
Was soll daran jetzt &quot;speziell für C++&quot; sein?</p>
<p>Artchi schrieb:</p>
<blockquote>
<p>Und laut MS ist XmlLite besonders auf Performance und einfache Benutzung getrimmt, dafür gibts halt weniger Features. (es benötigt nicht mal ein .NET-Installation!) Wer mehr Features benötigt und/oder kein C++ benutzt, kann auf eine andere Library ausweichen (MSXML oder .NET-Framework).<br />
Insofern ist &quot;Systemeigenes C++&quot; nicht falsch, es ist halt für einen C++ler einfacher zu benutzen.</p>
</blockquote>
<p>Ich arbeite jetzt seit 8 Jahren mit MSXML; meistens mit C++/ATL.<br />
Würdest Du mir raten mich mit XMLLite zu beschäftigen?</p>
<p>Grüsse</p>
<p>Gast++</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277642</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277642</guid><dc:creator><![CDATA[Gast++]]></dc:creator><pubDate>Wed, 02 May 2007 15:08:52 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Wed, 02 May 2007 15:59:39 GMT]]></title><description><![CDATA[<p>also MSXML hab ich noch nicht ausprobiert.... bin aber gerade dabei (runterladen, installieren, etc.). und klar, ne demo wäre nicht schlecht, wenn du eine hast.... Gast++</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277703</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277703</guid><dc:creator><![CDATA[M@tt]]></dc:creator><pubDate>Wed, 02 May 2007 15:59:39 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Wed, 02 May 2007 17:25:43 GMT]]></title><description><![CDATA[<p>M@tt schrieb:</p>
<blockquote>
<p>also MSXML hab ich noch nicht ausprobiert.... bin aber gerade dabei (runterladen, installieren, etc.). und klar, ne demo wäre nicht schlecht, wenn du eine hast.... Gast++</p>
</blockquote>
<p>Dann erzähl man mit welchem Compiler / Version Du arbeitest wenn Du's installiert hast.</p>
<p>Grüsse</p>
<p>Gast++</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277764</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277764</guid><dc:creator><![CDATA[Gast++]]></dc:creator><pubDate>Wed, 02 May 2007 17:25:43 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Wed, 02 May 2007 17:42:15 GMT]]></title><description><![CDATA[<p>also arbeite mit Microsoft Visual Studio 6.0 Professional.</p>
<p>wenn es von bedeutung ist... ich arbeite auf ner virtuellen maschine (xp), da vs auf vista oft genug &quot;hängen bleibt&quot;.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277770</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277770</guid><dc:creator><![CDATA[M@tt]]></dc:creator><pubDate>Wed, 02 May 2007 17:42:15 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Wed, 02 May 2007 17:47:03 GMT]]></title><description><![CDATA[<p>achso.. gleich noch ne frage hinterher: ich soll ja die funktionen zum auslesen der xml datei in ner dll bereitstellen, die dann auf anderen rechnern als meinem eingesetzt werden. muss dann auf denen auch msxml installiert sein? oder ist das überflüssig, da die dll ja fertig kompiliert ist.</p>
<p>sry für die frage... *peinlich*</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1277772</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277772</guid><dc:creator><![CDATA[M@tt]]></dc:creator><pubDate>Wed, 02 May 2007 17:47:03 GMT</pubDate></item><item><title><![CDATA[Reply to XML &amp;amp; C++ on Wed, 02 May 2007 21:38:30 GMT]]></title><description><![CDATA[<p>Hallo M@tt!</p>
<p>Leg am besten ein neues leeres Konsolen-Projekt an und nimm ides als Hauptdatei.<br />
Ich krigs zur Zeit nur als MBCS linked; kannst ja mal schauen ob VC 6 das auch als UNICODE hinkriegt.</p>
<p>Grüsse</p>
<p>*this</p>
<p>EDIT<br />
P.S:Ja, die MSXML?.dll muss da schon installiert sein, aber irgendeine sollte heutzutage eigentlich da sein. Sag ich mal so...<br />
Aber trotzdem: immer Vorsicht bei Versionsthemen !<br />
/EDIT</p>
<pre><code class="language-cpp">/*
 * @name COMDriver.cpp
 * 
 * @brief Simple Demo for using MSXML/DOM with C++/ATL
 * @brief Prints an xml foo.xml in working dir
 *
 * @author Gast++ 
 * @ref http://www.c-plusplus.net/forum/viewtopic-var-p-is-1277772.html#1277772
 * @created May 2nd 2007
 * @known_bugs badly documented an poor error-handled
 * @licence Public Domain - copy as you like it ;-)
 * @warranty None!
 *
 */

#define STRICT

#ifndef WINVER              // Allow use of features specific to Windows XP or later.
#define WINVER 0x0501       // Change this to the appropriate value to target other versions of Windows.
#endif

#ifndef _WIN32_WINNT        // Allow use of features specific to Windows XP or later.                   
#define _WIN32_WINNT 0x0501 // Change this to the appropriate value to target other versions of Windows.
#endif                      

#ifndef _WIN32_WINDOWS      // Allow use of features specific to Windows 98 or later.
#define _WIN32_WINDOWS 0x0410 // Change this to the appropriate value to target Windows Me or later.
#endif

#ifndef _WIN32_IE           // Allow use of features specific to IE 6.0 or later.
#define _WIN32_IE 0x0600    // Change this to the appropriate value to target other versions of IE.
#endif

#define _ATL_FREE_THREADED
#include &lt;iostream&gt;

#ifdef _UNICODE

typedef std::wstring string;
typedef std::wostream ostream;
typedef std::wistream istream; 

ostream&amp;  cout = std::wcout;
ostream&amp;  cerr = std::wcerr;
ostream&amp;  clog = std::wclog;
istream&amp;  cin  = std::wcin;

#else // _MBCS, SBCS

typedef std::string string;
typedef std::ostream ostream; 
typedef std::istream istream; 

ostream&amp;  cout = std::cout;
ostream&amp;  cerr = std::cerr;
ostream&amp;  clog = std::clog;
istream&amp;  cin  = std::cin;

#endif // #ifdef _UNICODE

#include &lt;atlbase.h&gt;
#include &lt;tchar.h&gt;

#import &lt;msxml4.dll&gt; // or the current version

const string strXMLFileName = _T(&quot;foo.xml&quot;);

/*
 * Prints Attributes of a given node; 
 * takes Node and idnent width as args
 */
void attrDump(MSXML2::IXMLDOMNodePtr&amp; pNode, unsigned int nTabs = 0)
{
    if(pNode != NULL) {

        MSXML2::IXMLDOMNamedNodeMapPtr&amp; pAttrList = pNode-&gt;attributes;

        if (pAttrList!= NULL) {

            for (register unsigned int i = 0; i &lt; nTabs; ++i) {

                cout &lt;&lt; _T(&quot;\t&quot;);
            }

            for ( MSXML2::IXMLDOMAttributePtr pAttr =  pAttrList-&gt;nextNode();
                                                 pAttr != NULL;
                                                 pAttr = pAttrList-&gt;nextNode()) {

                cout &lt;&lt; _T(&quot;#&quot;)     &lt;&lt; (TCHAR*)(pAttr-&gt;nodeName)
                     &lt;&lt; _T(&quot; =&gt; &quot;)  &lt;&lt; (TCHAR*)(pAttr-&gt;text) 
                     &lt;&lt; _T(&quot;\t&quot;);
            }

            cout &lt;&lt; std::endl;
        }
    }

}

/*
 * Prints a xml node-tree in-order recursively
 * takes Node and indent width as args
 */
void depthDump(MSXML2::IXMLDOMNodePtr&amp; pNode,unsigned int nTabs = 0)
{
    for (register unsigned int i = 0; i &lt; nTabs; ++i) {

        cout &lt;&lt; _T(&quot;\t&quot;);
    }

    cout &lt;&lt; (TCHAR*)_bstr_t(pNode-&gt;nodeName) &lt;&lt; std::endl; 

    attrDump(pNode,nTabs);

    for (MSXML2::IXMLDOMNodePtr&amp; pChild = pNode-&gt;firstChild;
                                 pChild != NULL;
                                 pChild = pChild-&gt;nextSibling) {

        depthDump(pChild, nTabs++);
    }
}   

int _tmain(int argc, TCHAR* argv[]) {

    HRESULT hr = S_OK;

    if (SUCCEEDED(hr = ::CoInitializeEx(NULL, COINIT_MULTITHREADED))) {

        /*
         * Declaring here makes COM SmartPtr work for us:
         *
         * - They'll be c/dtor'ed outside any try..catch 
         *   thus AddRef'ing / Releasing the Pointers
         *
         * - dto before ::CoUninitialize() - exceptions are thrown
         *    
         */

        try {

            MSXML2::IXMLDOMDocument2Ptr pDoc(&quot;Msxml2.FreeThreadedDOMDocument&quot;);
            pDoc-&gt;async = false;

            if (pDoc-&gt;load(::strXMLFileName.c_str())) {
                /*
                 * Simply depth-searching the tree 
                 * and printing tags
                 */
                depthDump((MSXML2::IXMLDOMNodePtr)pDoc-&gt;documentElement);

            };

        } catch (_com_error&amp; e) {
#pragma message(&quot;There can to be done MUCH more about Error Handling!&quot;)
            /*
             * especially by using this Ptr
             */
            try { 
                IErrorInfoPtr pErr(e.ErrorInfo(),false); /* This take sownership 
                                                          * of the received Pointer
                                                          * &quot;Destructive Copying&quot;
                                                          */

                cerr &lt;&lt; e.ErrorMessage() &lt;&lt; std::endl;
                hr = e.Error();

            } catch (...) {

                cerr &lt;&lt; _T(&quot;Fatal: Unknown Error after Exception&quot;);             
            }

        }

    } else { // ::CoInitializeEx()
        // FormatMessage(...,hr...)
        cerr &lt;&lt; _T(&quot;Fatal: Could not initalize COM! Exiting&quot;) &lt;&lt; std::endl;
    }
    ::CoUninitialize(); // NULL

    return (int) hr;
};
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1277853</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1277853</guid><dc:creator><![CDATA[Gast++]]></dc:creator><pubDate>Wed, 02 May 2007 21:38:30 GMT</pubDate></item></channel></rss>