<?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[RichEdit EDITSTREAM Probleme]]></title><description><![CDATA[<p>Hallo,</p>
<p>möchte unter XP aus einem RichEdit Fenster eines anderen Programmes den Inhalt auslesen. Habe mir über die ProzessID das Fenster-Handle geholt und dann das Child-Window vom Typ RICHEDIT_CLASSW genommen. Bei dem SendMessage beendet sich allerdings das andere Programm mit dem RichEdit und GetLastError spuckt auch nichts aus.</p>
<pre><code class="language-cpp">DWORD CALLBACK EditStreamCallback(DWORD_PTR dwCookie, LPBYTE pbBuff, LONG cb, LONG *pcb) {
	std::cout &lt;&lt; '.';	
	return 0;
}

int _tmain(int argc, _TCHAR* argv[]) {	
	/* ... */

	HWND child = /* ... */

	EDITSTREAM editstr;
	editstr.pfnCallback = &amp;EditStreamCallback;

	LRESULT result;
	result = SendMessage(child, EM_STREAMOUT, (CP_UTF16 &lt;&lt; 16) | SF_USECODEPAGE | SF_RTF, 
						 reinterpret_cast&lt;LPARAM&gt;(&amp;editstr));
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/topic/183253/richedit-editstream-probleme</link><generator>RSS for Node</generator><lastBuildDate>Tue, 07 Jul 2026 07:38:23 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/183253.rss" rel="self" type="application/rss+xml"/><pubDate>Sun, 03 Jun 2007 11:12:34 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to RichEdit EDITSTREAM Probleme on Sun, 03 Jun 2007 11:12:34 GMT]]></title><description><![CDATA[<p>Hallo,</p>
<p>möchte unter XP aus einem RichEdit Fenster eines anderen Programmes den Inhalt auslesen. Habe mir über die ProzessID das Fenster-Handle geholt und dann das Child-Window vom Typ RICHEDIT_CLASSW genommen. Bei dem SendMessage beendet sich allerdings das andere Programm mit dem RichEdit und GetLastError spuckt auch nichts aus.</p>
<pre><code class="language-cpp">DWORD CALLBACK EditStreamCallback(DWORD_PTR dwCookie, LPBYTE pbBuff, LONG cb, LONG *pcb) {
	std::cout &lt;&lt; '.';	
	return 0;
}

int _tmain(int argc, _TCHAR* argv[]) {	
	/* ... */

	HWND child = /* ... */

	EDITSTREAM editstr;
	editstr.pfnCallback = &amp;EditStreamCallback;

	LRESULT result;
	result = SendMessage(child, EM_STREAMOUT, (CP_UTF16 &lt;&lt; 16) | SF_USECODEPAGE | SF_RTF, 
						 reinterpret_cast&lt;LPARAM&gt;(&amp;editstr));
}
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1297631</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1297631</guid><dc:creator><![CDATA[Konrad]]></dc:creator><pubDate>Sun, 03 Jun 2007 11:12:34 GMT</pubDate></item><item><title><![CDATA[Reply to RichEdit EDITSTREAM Probleme on Sun, 03 Jun 2007 11:16:29 GMT]]></title><description><![CDATA[<p>Dasgeht nicht, weil Deine Prozedur in Deinem Prozessraum liegt. Das RTF Control will den Code aber in seinem Prozessraum ausführen. Das kann so nichtgehen!</p>
<p>Du müsstest den ganzen Code in eine DLL packen, und den in dem fremden Prozessraum inhezieren um das hinzubekommen.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1297634</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1297634</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Sun, 03 Jun 2007 11:16:29 GMT</pubDate></item></channel></rss>