<?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[Problem mit Ole zugriff]]></title><description><![CDATA[<p>Hallo, ich habe die Anbindung an das Worddokument schon hinbekommen. Habe mich dabei an dieversen Posts die hier im Forum waren orientiert.<br />
Heute morgen war bei der Compelierung des Projekts alles super. Alle Textstellen wurden in Textmarken des Dokuments eingefügt.<br />
Als ich dann den Projektordner anpasste, und die Compilierung neu durchführte, sah es so aus als würde das Programm normal funktionieren. Leider fügte das Programm die Textmarken nicht mehr mit den Texten. Stattdessen gab es eine Fehlermeldung durch meinen try- und catch-Block. EAccessViolation lautete der genaue Text.<br />
Ich stelle mal die entscheidenen Stelle des Quelltextes Online:</p>
<pre><code class="language-cpp">void __fastcall TFormCertificate::CreateDocument(Variant &amp;vOLEWord,
  AnsiString slTemplateFile, AnsiString slSaveFile, bool blPrint)
{
  try
  {
	// falls Word-Fenster sichtbar sein soll,
	// muss folgende Zeile aktiviert werden:
	vOLEWord.OlePropertySet(&quot;Visible&quot;, true);

	// Falls die Vorlagen-Datei nicht existiert, schimpfen und beenden:
	if(!FileExists(slTemplateFile))
	{
	  Application-&gt;MessageBox(&quot;Vorlagendatei nicht gefunden !&quot;,
		&quot;Abbruch&quot;,MB_ICONERROR);
	  return;
	}

	// Referenz auf die &quot;Documents&quot;-Eigenschaft besorgen
	Variant vDokuments = vOLEWord.OlePropertyGet(&quot;Documents&quot;);
	// neues Dokument mit slTemplateFile als Dokumentenvorlage erzeugen:
	vDokuments.Exec(Procedure(&quot;Add&quot;) &lt;&lt; slTemplateFile &lt;&lt; 0);

	//--------------------------------------------------
	// Formular-Felder ausfüllen
	//--------------------------------------------------

	// Referenz auf die &quot;Selection&quot;-Eigenschaft besorgen
	Variant vSelection = vOLEWord.OlePropertyGet(&quot;Selection&quot;);   // &lt;&lt;&lt;&lt;--- Hier tritt der Fehler auf und der Sprung zum Catch-Block folgt
...

...
    // Datei schließen:
    vActiveDocument.Exec(Procedure(&quot;Close&quot;));
  }
  catch(Exception&amp; e)
  {
	Application-&gt;MessageBox( e.Message.c_str(),&quot;OLE-Error&quot;,MB_ICONERROR);
  }
}
</code></pre>
<p>Kann mir einer sagen, ob ich im Quellsext einen fehler mache oder ob ich etwas übersehen habe? Es ist für mich schon sehr wichtig, da ich für die Lösung der bisherigen Aufgabe schon drei Tage gebraucht habe. Bitte helft mir. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/192943/problem-mit-ole-zugriff</link><generator>RSS for Node</generator><lastBuildDate>Mon, 17 Aug 2026 22:49:46 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/192943.rss" rel="self" type="application/rss+xml"/><pubDate>Thu, 20 Sep 2007 10:41:18 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Problem mit Ole zugriff on Thu, 20 Sep 2007 10:41:18 GMT]]></title><description><![CDATA[<p>Hallo, ich habe die Anbindung an das Worddokument schon hinbekommen. Habe mich dabei an dieversen Posts die hier im Forum waren orientiert.<br />
Heute morgen war bei der Compelierung des Projekts alles super. Alle Textstellen wurden in Textmarken des Dokuments eingefügt.<br />
Als ich dann den Projektordner anpasste, und die Compilierung neu durchführte, sah es so aus als würde das Programm normal funktionieren. Leider fügte das Programm die Textmarken nicht mehr mit den Texten. Stattdessen gab es eine Fehlermeldung durch meinen try- und catch-Block. EAccessViolation lautete der genaue Text.<br />
Ich stelle mal die entscheidenen Stelle des Quelltextes Online:</p>
<pre><code class="language-cpp">void __fastcall TFormCertificate::CreateDocument(Variant &amp;vOLEWord,
  AnsiString slTemplateFile, AnsiString slSaveFile, bool blPrint)
{
  try
  {
	// falls Word-Fenster sichtbar sein soll,
	// muss folgende Zeile aktiviert werden:
	vOLEWord.OlePropertySet(&quot;Visible&quot;, true);

	// Falls die Vorlagen-Datei nicht existiert, schimpfen und beenden:
	if(!FileExists(slTemplateFile))
	{
	  Application-&gt;MessageBox(&quot;Vorlagendatei nicht gefunden !&quot;,
		&quot;Abbruch&quot;,MB_ICONERROR);
	  return;
	}

	// Referenz auf die &quot;Documents&quot;-Eigenschaft besorgen
	Variant vDokuments = vOLEWord.OlePropertyGet(&quot;Documents&quot;);
	// neues Dokument mit slTemplateFile als Dokumentenvorlage erzeugen:
	vDokuments.Exec(Procedure(&quot;Add&quot;) &lt;&lt; slTemplateFile &lt;&lt; 0);

	//--------------------------------------------------
	// Formular-Felder ausfüllen
	//--------------------------------------------------

	// Referenz auf die &quot;Selection&quot;-Eigenschaft besorgen
	Variant vSelection = vOLEWord.OlePropertyGet(&quot;Selection&quot;);   // &lt;&lt;&lt;&lt;--- Hier tritt der Fehler auf und der Sprung zum Catch-Block folgt
...

...
    // Datei schließen:
    vActiveDocument.Exec(Procedure(&quot;Close&quot;));
  }
  catch(Exception&amp; e)
  {
	Application-&gt;MessageBox( e.Message.c_str(),&quot;OLE-Error&quot;,MB_ICONERROR);
  }
}
</code></pre>
<p>Kann mir einer sagen, ob ich im Quellsext einen fehler mache oder ob ich etwas übersehen habe? Es ist für mich schon sehr wichtig, da ich für die Lösung der bisherigen Aufgabe schon drei Tage gebraucht habe. Bitte helft mir. <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369106</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369106</guid><dc:creator><![CDATA[Richter Code]]></dc:creator><pubDate>Thu, 20 Sep 2007 10:41:18 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Ole zugriff on Thu, 20 Sep 2007 18:07:07 GMT]]></title><description><![CDATA[<p>Richter Code schrieb:</p>
<blockquote>
<p>Stattdessen gab es eine Fehlermeldung durch meinen try- und catch-Block.</p>
</blockquote>
<p>Bei welcher Zeile tritt der Fehler auf?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369594</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369594</guid><dc:creator><![CDATA[Jansen]]></dc:creator><pubDate>Thu, 20 Sep 2007 18:07:07 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Ole zugriff on Fri, 21 Sep 2007 06:32:49 GMT]]></title><description><![CDATA[<p>Hey, sorry das ich das nicht eindeutig beschrieben habe. Die Zeile habe ich aber im Quellcodeauszug gekenntzeichnet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369841</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369841</guid><dc:creator><![CDATA[Richter Code]]></dc:creator><pubDate>Fri, 21 Sep 2007 06:32:49 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Ole zugriff on Fri, 21 Sep 2007 08:46:50 GMT]]></title><description><![CDATA[<p>Hallo nochmal,<br />
ich habe es nun mit dem TWordDocument und TWordApplication gelöst. Klappt super. Nun drucke ich das Dokument gleich aus und schließe es. Leider gibt es beim schließen ein Problem.</p>
<pre><code class="language-cpp">...
	vBookmark =  Datum.c_str();
		WordApplication1-&gt;Selection-&gt;GoTo(vWhat, EmptyParam, EmptyParam, vBookmark);
		WordApplication1-&gt;Selection-&gt;TypeText(StringToOleStr(EditDatum-&gt;Text));
		WordDocument1-&gt;PrintOut();
		Sleep(3000);

		WordDocument1-&gt;Close();
		WordDocument1-&gt;Disconnect();
		WordApplication1-&gt;Quit();
		WordApplication1-&gt;Disconnect();
	}
</code></pre>
<p>Bei</p>
<pre><code class="language-cpp">WordDocument-&gt;Colese();
</code></pre>
<p>wird das Dokument so gespeichert wie es gerade ist. Es soll aber nicht gespeicher werden. Was kann ich tun?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369926</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369926</guid><dc:creator><![CDATA[Richter Code]]></dc:creator><pubDate>Fri, 21 Sep 2007 08:46:50 GMT</pubDate></item><item><title><![CDATA[Reply to Problem mit Ole zugriff on Fri, 21 Sep 2007 08:52:35 GMT]]></title><description><![CDATA[<p>Ah, habe es schon selber hinbekommen. Habe der Methode eine Variant Variable mit false übergeben.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1369928</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1369928</guid><dc:creator><![CDATA[Richter Code]]></dc:creator><pubDate>Fri, 21 Sep 2007 08:52:35 GMT</pubDate></item></channel></rss>