<?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[CRowset::Insert()]]></title><description><![CDATA[<p>Hi@all,</p>
<p>ich möchte per CRowset::Insert Daten in eine Tabelle schreiben.<br />
Zwei kleine Probleme habe ich dabei allerdings noch.<br />
Siehe die Kommentare dahinter.</p>
<pre><code class="language-cpp">m_dboMand.MoveLast();
	CString strPath;
	strPath = &quot;C:\\NoRA\\noradat\\dk000000\\00000001.doc&quot;;
	CFile file;
	int nLength, nFind = 0;
	char* Dateiinhalt;
	while((nFind = strPath.Find(&quot;\\&quot;, nFind + 2)) != - 1)
		strPath.Insert(nFind, &quot;\\&quot;);
	if(file.Open(strPath, CFile::modeRead | CFile::typeBinary | CFile::shareDenyWrite))
	{
		Dateiinhalt = new char[ file.GetLength() ];
		file.Read( Dateiinhalt, file.GetLength() ); 
		nLength = file.GetLength();
	}
	HANDLE hFile;
	IStream *iStreamDoc;
	hFile = GlobalAlloc(GHND, nLength);
	CreateStreamOnHGlobal(hFile, TRUE, &amp;iStreamDoc); //Ist das File jetzt schon drin? Ich glaube nicht da ich ja
// nirgends das File an dien Stream übergebe.
	lstrcpy(m_dboMand.m_Test, &quot;Karsten Asche&quot;);
	lstrcpy(m_dboMand.m_Test1, &quot;TestOLE&quot;);
	lstrcpy(m_dboMand.m_Test2, &quot;Test2OLE&quot;);
	static const GUID testid = 
	{ 0x3ea1003f, 0x3a06, 0x43e3, { 0x8a, 0x5d, 0x20, 0xcf, 0xc3, 0x86, 0x8f, 0x34 } };

	m_dboMand.m_ID = testid;
	m_dboMand.m_Image = iStreamDoc;
	m_dboMand.m_est = 345;
	lstrcpy(m_dboMand.m_LInk, &quot;http://www.testOLE.de&quot;);

	m_dboMand.Insert()://Bekomme ich ganz bescheuerte Werte zurück &quot;-26345745683&quot; Kann  ja auch damit zusammenhängen,
//dass File noch nicht korrekt an den Stream übergeben ist.
</code></pre>
<p>Kann mir da jemand behilflich sein bin noch absoluter Beginner was OLE DB angeht:)</p>
<p>Gruß<br />
CrazyPlaya</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/153222/crowset-insert</link><generator>RSS for Node</generator><lastBuildDate>Fri, 24 Jul 2026 08:28:16 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/153222.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 14 Jul 2006 07:11:57 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to CRowset::Insert() on Fri, 14 Jul 2006 07:11:57 GMT]]></title><description><![CDATA[<p>Hi@all,</p>
<p>ich möchte per CRowset::Insert Daten in eine Tabelle schreiben.<br />
Zwei kleine Probleme habe ich dabei allerdings noch.<br />
Siehe die Kommentare dahinter.</p>
<pre><code class="language-cpp">m_dboMand.MoveLast();
	CString strPath;
	strPath = &quot;C:\\NoRA\\noradat\\dk000000\\00000001.doc&quot;;
	CFile file;
	int nLength, nFind = 0;
	char* Dateiinhalt;
	while((nFind = strPath.Find(&quot;\\&quot;, nFind + 2)) != - 1)
		strPath.Insert(nFind, &quot;\\&quot;);
	if(file.Open(strPath, CFile::modeRead | CFile::typeBinary | CFile::shareDenyWrite))
	{
		Dateiinhalt = new char[ file.GetLength() ];
		file.Read( Dateiinhalt, file.GetLength() ); 
		nLength = file.GetLength();
	}
	HANDLE hFile;
	IStream *iStreamDoc;
	hFile = GlobalAlloc(GHND, nLength);
	CreateStreamOnHGlobal(hFile, TRUE, &amp;iStreamDoc); //Ist das File jetzt schon drin? Ich glaube nicht da ich ja
// nirgends das File an dien Stream übergebe.
	lstrcpy(m_dboMand.m_Test, &quot;Karsten Asche&quot;);
	lstrcpy(m_dboMand.m_Test1, &quot;TestOLE&quot;);
	lstrcpy(m_dboMand.m_Test2, &quot;Test2OLE&quot;);
	static const GUID testid = 
	{ 0x3ea1003f, 0x3a06, 0x43e3, { 0x8a, 0x5d, 0x20, 0xcf, 0xc3, 0x86, 0x8f, 0x34 } };

	m_dboMand.m_ID = testid;
	m_dboMand.m_Image = iStreamDoc;
	m_dboMand.m_est = 345;
	lstrcpy(m_dboMand.m_LInk, &quot;http://www.testOLE.de&quot;);

	m_dboMand.Insert()://Bekomme ich ganz bescheuerte Werte zurück &quot;-26345745683&quot; Kann  ja auch damit zusammenhängen,
//dass File noch nicht korrekt an den Stream übergeben ist.
</code></pre>
<p>Kann mir da jemand behilflich sein bin noch absoluter Beginner was OLE DB angeht:)</p>
<p>Gruß<br />
CrazyPlaya</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1097491</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1097491</guid><dc:creator><![CDATA[CrazyPlaya]]></dc:creator><pubDate>Fri, 14 Jul 2006 07:11:57 GMT</pubDate></item><item><title><![CDATA[Reply to CRowset::Insert() on Fri, 14 Jul 2006 09:20:18 GMT]]></title><description><![CDATA[<p>Welchen HRESULT bekommst Du denn zurück.<br />
Der höchste HRESULT ist -2147483647. Deiner (-26345745683) ist technisch nicht möglich!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1097543</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1097543</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Fri, 14 Jul 2006 09:20:18 GMT</pubDate></item><item><title><![CDATA[Reply to CRowset::Insert() on Fri, 14 Jul 2006 09:37:22 GMT]]></title><description><![CDATA[<p>Sorry du hast recht. Meinen Wert habe ich einfach so daher getippt, da ich mal davon ausgegangen bin, das dies ein Wert für eine nicht initialisierte Variable ist.<br />
Welche Bedeutung hat den dieser Wert?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1097556</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1097556</guid><dc:creator><![CDATA[CrazyPlaya]]></dc:creator><pubDate>Fri, 14 Jul 2006 09:37:22 GMT</pubDate></item><item><title><![CDATA[Reply to CRowset::Insert() on Fri, 14 Jul 2006 13:29:04 GMT]]></title><description><![CDATA[<p>Dies ist ein Fehlercode. Mit dem Error Lookup Programm kannst Du sogar die Bedeutung nachschlagen, oder es steht dazu sogar was in der MSDN!</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1097728</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1097728</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Fri, 14 Jul 2006 13:29:04 GMT</pubDate></item><item><title><![CDATA[Reply to CRowset::Insert() on Tue, 18 Jul 2006 06:44:20 GMT]]></title><description><![CDATA[<p>Hi nochmal,<br />
also der genaue Returnwert lautet -2147217879 oder 0x80040E29 aber damit läßt sich weder im Error - Lookup noch in der MSDN etwas finden.<br />
Jemand eine Idee wie der Fehler lauten könnten?</p>
<p>Gruß<br />
CrazyPlaya</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1099525</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1099525</guid><dc:creator><![CDATA[CrazyPlaya]]></dc:creator><pubDate>Tue, 18 Jul 2006 06:44:20 GMT</pubDate></item><item><title><![CDATA[Reply to CRowset::Insert() on Tue, 18 Jul 2006 07:31:54 GMT]]></title><description><![CDATA[<p>Jet Engine Fehler:<br />
<strong>0x80040E29 -2147217879 The rowset cannot scroll backwards</strong></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1099549</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1099549</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Tue, 18 Jul 2006 07:31:54 GMT</pubDate></item><item><title><![CDATA[Reply to CRowset::Insert() on Tue, 18 Jul 2006 07:57:31 GMT]]></title><description><![CDATA[<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/35992">@Martin</a> Richter<br />
Oh Danke wo rausgefunden?<br />
Tut mir auch leid habe gerade gesehen das war die Fehlermeldung die ich bei MoveLast() zurückbekommen habe:)<br />
Insert gibt -2147217887 bzw. 0xF3338331 zurück.<br />
Ich weiß jetzt auch nicht mehr was ich falsch mache. Ich weise alle Werte zu.<br />
Ich habe es auch genau nach den beispielen gemacht die Microsoft gibt. Bzw. Ich habe es versucht.<br />
Hast du vielleicht ein gutes Tutorial zu OLE DB zur Verfügung oder ne Buchempfehlung.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1099570</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1099570</guid><dc:creator><![CDATA[CrazyPlaya]]></dc:creator><pubDate>Tue, 18 Jul 2006 07:57:31 GMT</pubDate></item><item><title><![CDATA[Reply to CRowset::Insert() on Tue, 18 Jul 2006 10:09:05 GMT]]></title><description><![CDATA[<p>So hier noch mal mein derzeitiger Codestand vielleicht fällt ja jemandem auf was ich falsch mache.</p>
<pre><code class="language-cpp">int nLength;
	BYTE byteFile[50];
	byteFile[0] = 0;
	strPath = &quot;C:\\NoRA\\noradat\\dk000000\\00000001.doc&quot;;
	COleStreamFile osFile;
	osFile.Open(strPath, COleStreamFile::modeRead | COleStreamFile::shareDenyWrite);
	nLength = 65535;
	WIN32_FIND_DATAA fData;
	HANDLE hFile;
	hFile = ::FindFirstFile(strPath, &amp;fData);
	if(hFile == (HANDLE)0xFFFFFFFF) 
	{
		AfxMessageBox(&quot;Verzeichnis nicht gefunden&quot;);
		return;
	}
	hFile = GlobalAlloc(GHND, nLength);
	IStream *iStreamDoc;
	ISequentialStream *iSeqStream;
	//iStreamDoc-&gt;Read(osFile.GetLength(), NULL);
	CreateStreamOnHGlobal(hFile, TRUE, &amp;iStreamDoc);
	iSeqStream = iStreamDoc;
	//m_dboMand.MoveLast();
	HRESULT hRes;	
	m_dboMand.m_Inhalt[0] = 0;
	lstrcpy(m_dboMand.m_Test, &quot;Karsten Asche&quot;);
	lstrcpy(m_dboMand.m_Test1, &quot;TestOLE&quot;);
	lstrcpy(m_dboMand.m_Test2, &quot;Test2OLE&quot;);
	m_dboMand.m_Anlage = dbTime;
	static const GUID testid = 
	{ 0x3ea1003f, 0x3a06, 0x43e3, { 0x8a, 0x5d, 0x20, 0xcf, 0xc3, 0x86, 0x8f, 0x34 } };

	m_dboMand.m_ID = testid;
	m_dboMand.m_Image = iSeqStream;
	m_dboMand.m_est = 345;
	lstrcpy(m_dboMand.m_LInk, &quot;http://www.testOLE.de&quot;);

	hRes = m_dboMand.Insert();
	if(hRes != S_OK)
		AfxThrowOleException(hRes);
</code></pre>
<p>Fehler ist nun Interner Anwendungsfehler</p>
<p>??? <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>
]]></description><link>https://www.c-plusplus.net/forum/post/1099661</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1099661</guid><dc:creator><![CDATA[CrazyPlaya]]></dc:creator><pubDate>Tue, 18 Jul 2006 10:09:05 GMT</pubDate></item><item><title><![CDATA[Reply to CRowset::Insert() on Tue, 18 Jul 2006 13:17:06 GMT]]></title><description><![CDATA[<p>So wie das ausschaut liegt das irgendwie mit dem Stream zusammen.<br />
Habe mir gerade mal einen kleinen Testcontainer gebastelt und dann nach und nach alle Werte der Tabelle hinzugefügt und sobald ich den Stream benötigte war Feierabend mit Insert.</p>
<p>PS: Das Binary Feld bereitet mir auch noch sorgen</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1099794</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1099794</guid><dc:creator><![CDATA[CrazyPlaya]]></dc:creator><pubDate>Tue, 18 Jul 2006 13:17:06 GMT</pubDate></item></channel></rss>