<?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[Konvertierung von const char[x] in WCHAR]]></title><description><![CDATA[<p>Hi, ich habe mir eine DLL geschrieben, welche die Funktion GetActiveWindowTitle() beinhaltet.<br />
Der Code:</p>
<p>//Export hier: extern &quot;C&quot; __declspec (dllexport)</p>
<pre><code class="language-cpp">EXPORT WCHAR CALLBACK GetActiveWindowText()
{
	WCHAR TitleString;

	TitleString = GetWindowText(GetActiveWindow(), &amp;TitleString, 255);

	return TitleString;
}
</code></pre>
<p>Diese Funktion akzeptiert er auch, weil hier ja kein Array erzeugt wird. Das Problem aber ist, wenn ich innerhlab der DLL eine Zeichenkette wiedergeben will. Beispiel:</p>
<pre><code class="language-cpp">EXPORT WCHAR CALLBACK GetActiveWindowText()
{
	WCHAR TitleString;

	TitleString = L&quot;Test&quot;;

	return TitleString;
}
</code></pre>
<p>&quot;Konvertierung von const WCHAR[4] in WCHAR nicht möglich.&quot;</p>
<p>Das größere Problem: Das Zielprogramm (welches in einer anderen Programiersprache geschrieben ist, unterstützt keine Zeiger (Delphi), weshalb ich keinen Zeiger als Parameter anfordern kann. Wie kann ich trotzdem den Fenstertext des aktiven Fensters zurückgeben?</p>
<p>mfg MW88</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/209878/konvertierung-von-const-char-x-in-wchar</link><generator>RSS for Node</generator><lastBuildDate>Wed, 22 Apr 2026 04:54:37 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/209878.rss" rel="self" type="application/rss+xml"/><pubDate>Fri, 04 Apr 2008 11:44:36 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to Konvertierung von const char[x] in WCHAR on Fri, 04 Apr 2008 11:44:36 GMT]]></title><description><![CDATA[<p>Hi, ich habe mir eine DLL geschrieben, welche die Funktion GetActiveWindowTitle() beinhaltet.<br />
Der Code:</p>
<p>//Export hier: extern &quot;C&quot; __declspec (dllexport)</p>
<pre><code class="language-cpp">EXPORT WCHAR CALLBACK GetActiveWindowText()
{
	WCHAR TitleString;

	TitleString = GetWindowText(GetActiveWindow(), &amp;TitleString, 255);

	return TitleString;
}
</code></pre>
<p>Diese Funktion akzeptiert er auch, weil hier ja kein Array erzeugt wird. Das Problem aber ist, wenn ich innerhlab der DLL eine Zeichenkette wiedergeben will. Beispiel:</p>
<pre><code class="language-cpp">EXPORT WCHAR CALLBACK GetActiveWindowText()
{
	WCHAR TitleString;

	TitleString = L&quot;Test&quot;;

	return TitleString;
}
</code></pre>
<p>&quot;Konvertierung von const WCHAR[4] in WCHAR nicht möglich.&quot;</p>
<p>Das größere Problem: Das Zielprogramm (welches in einer anderen Programiersprache geschrieben ist, unterstützt keine Zeiger (Delphi), weshalb ich keinen Zeiger als Parameter anfordern kann. Wie kann ich trotzdem den Fenstertext des aktiven Fensters zurückgeben?</p>
<p>mfg MW88</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1486391</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486391</guid><dc:creator><![CDATA[MW88]]></dc:creator><pubDate>Fri, 04 Apr 2008 11:44:36 GMT</pubDate></item><item><title><![CDATA[Reply to Konvertierung von const char[x] in WCHAR on Fri, 04 Apr 2008 11:47:41 GMT]]></title><description><![CDATA[<blockquote>
<p>Das Zielprogramm (welches in einer anderen Programiersprache geschrieben ist, unterstützt keine Zeiger (Delphi)</p>
</blockquote>
<p><a href="http://www.delphi-treff.de/sprachen/object-pascal/zeiger/" rel="nofollow">http://www.delphi-treff.de/sprachen/object-pascal/zeiger/</a></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1486394</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486394</guid><dc:creator><![CDATA[_ie]]></dc:creator><pubDate>Fri, 04 Apr 2008 11:47:41 GMT</pubDate></item><item><title><![CDATA[Reply to Konvertierung von const char[x] in WCHAR on Fri, 04 Apr 2008 12:30:32 GMT]]></title><description><![CDATA[<p>Das ändert trotzdem nichts daran, dass das Programm die Zeiger nicht unterstützt (es hat eine eigene Programmiersprache, welche diese nicht unterstützt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1486422</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486422</guid><dc:creator><![CDATA[MW88]]></dc:creator><pubDate>Fri, 04 Apr 2008 12:30:32 GMT</pubDate></item><item><title><![CDATA[Reply to Konvertierung von const char[x] in WCHAR on Fri, 04 Apr 2008 17:13:11 GMT]]></title><description><![CDATA[<p>omg, delphi is das Letzte ...</p>
<p>und 'nen char ist nunmal ein Zeichen und keine zeichenkette. Du kannst also keine Zeichenkette in TitleString speichern. Mach 'nen Array draus ..</p>
<pre><code class="language-cpp">WCHAR TitleString[256];
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/1486647</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486647</guid><dc:creator><![CDATA[dust]]></dc:creator><pubDate>Fri, 04 Apr 2008 17:13:11 GMT</pubDate></item><item><title><![CDATA[Reply to Konvertierung von const char[x] in WCHAR on Fri, 04 Apr 2008 17:31:22 GMT]]></title><description><![CDATA[<p>Ja sry, ich hab das Programm geschrieben und ja du hast recht: Delphi ist das letzte!^^<br />
Deswegen programmiere ich damit auch nicht^^</p>
<p>Aber zu deiner Lösung: Ja du hast recht aber das war nur ein blöder Fehler von mir aber das Problem bleibt immer noch. Auch wenn ich das schreibe:</p>
<pre><code class="language-cpp">EXPORT WCHAR CALLBACK GetActiveWindowText()
{
    return &quot;Test&quot;;
}
</code></pre>
<p>Kommt der gleiche Fehler.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1486657</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486657</guid><dc:creator><![CDATA[MW88]]></dc:creator><pubDate>Fri, 04 Apr 2008 17:31:22 GMT</pubDate></item><item><title><![CDATA[Reply to Konvertierung von const char[x] in WCHAR on Fri, 04 Apr 2008 18:20:37 GMT]]></title><description><![CDATA[<p>ohne dir nahe treten zu wollen - du solltest erstmal die Basics lernen. Wenn deine Funktion den Rückgabewert WCHAR hat kann diese nur 1 Zeichen zurückgeben. Somit funktioniert natürlich auch return &quot;Test&quot; nicht.<br />
Im Übrigen liefert GetWindowText nicht den Window Text zurück, sondern die Anzahl der zeichen die in den 3. Parameter geschrieben wurden, der ein gültiger Pointer auf ein WCHAR-Array sein muss. Du übergibts allerdings kein Array im 3. Parameter.<br />
Also:<br />
- lerne etwas über Pointer (Zeiger)<br />
- lerne etwas über Strings (Zeichenketten)</p>
<p>MfG</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1486676</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486676</guid><dc:creator><![CDATA[Black Shadow]]></dc:creator><pubDate>Fri, 04 Apr 2008 18:20:37 GMT</pubDate></item><item><title><![CDATA[Reply to Konvertierung von const char[x] in WCHAR on Fri, 04 Apr 2008 18:20:32 GMT]]></title><description><![CDATA[<p>ohne dir nahe treten zu wollen - du bist ziemlich dumm</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1486677</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486677</guid><dc:creator><![CDATA[rofler]]></dc:creator><pubDate>Fri, 04 Apr 2008 18:20:32 GMT</pubDate></item><item><title><![CDATA[Reply to Konvertierung von const char[x] in WCHAR on Fri, 04 Apr 2008 19:25:34 GMT]]></title><description><![CDATA[<p>Das hättest du dir sparen können du Vollidiot. Hast also doch kein Reallife.</p>
<p>Ich habe schon mit strings gearbeitet aber es geht nicht, gib mir doch wenigstens mal nen Hinweis (nen gültigen Ansatz)?<br />
Das hilft mir genau so wenig weiter.</p>
<p>Zu Blackshadow: Ohne dir nahetreten zu wollen - Vielleicht solltest du mal denken oder nachlesen bevor du schreibst (sry, hab ich beim obrigen Post auch nicht.</p>
<blockquote>
<p>The GetWindowText function copies the <strong>text</strong> of the specified window's title bar (if it has one) into a <strong>buffer</strong>. If the specified window is a control, the text of the control is copied. However, GetWindowText cannot retrieve the text of a control in another application.</p>
</blockquote>
<blockquote>
<p>Parameters</p>
<p>hWnd<br />
[in] Handle to the window or control containing the text.<br />
<strong>lpString</strong><br />
[out] Pointer to the buffer that will receive the text. If the string is as long or longer than the buffer, the string is truncated and terminated with a NULL character.<br />
nMaxCount<br />
[in] Specifies the maximum number of characters to copy to the buffer, including the NULL character. If the text exceeds this limit, it is truncated.</p>
</blockquote>
<p>Außerdem kann ich kein</p>
<p>EXPORT wstring verwenden.</p>
<p>Ich habe genug Ahnung von Zeigern nur habe ich fast nie wenn ihc auf diesem Forum schreibe meine Programmierumgebung offen, weshalb es zu diesen Fehlern kommt.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1486704</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486704</guid><dc:creator><![CDATA[rofler]]></dc:creator><pubDate>Fri, 04 Apr 2008 19:25:34 GMT</pubDate></item><item><title><![CDATA[Reply to Konvertierung von const char[x] in WCHAR on Fri, 04 Apr 2008 19:26:40 GMT]]></title><description><![CDATA[<p>Weshalb die Funktion eh sinnlos ist oder?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1486705</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1486705</guid><dc:creator><![CDATA[MW88 (oben rofler)]]></dc:creator><pubDate>Fri, 04 Apr 2008 19:26:40 GMT</pubDate></item></channel></rss>