<?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[RegEnumValue findet nicht alle Values]]></title><description><![CDATA[<p>Hallo, wie ja schon im Titel steht findet in meinem Programm RegEnumValue nicht alle Values, bzw. es findet alle Values wie sich an der Zahl der Funktionsaufrüfe sehen lässt, aber es gibt als Fehler ERROR_MORE_DATA aus, obwohl genug Speicher zur Verfügung steht.</p>
<p>Hier mal der Quelltext(der Registrypfad ist übrigens beliebt gewählt und daran liegts auch nicht):</p>
<pre><code class="language-cpp">HKEY hKey;
    bool check = true;
    char value[1024], wert[1024];
    DWORD size = 1024;
    string pfad = &quot;SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\&quot;;
    RegOpenKey(HKEY_LOCAL_MACHINE, pfad.c_str(), &amp;hKey);
    for(DWORD i = 0; check; i++) {
        long ret = RegEnumValue(hKey, i, value, &amp;size, NULL, NULL, (BYTE*)wert, &amp;size);
        cout&lt;&lt;ret&lt;&lt;endl;
        if(ret == ERROR_NO_MORE_ITEMS) check = false;
        else if(ret != ERROR_MORE_DATA) cout&lt;&lt;value&lt;&lt;endl;
    }
    RegCloseKey(hKey);
</code></pre>
<p>Jemand ne Idee worans liegt?</p>
]]></description><link>https://www.c-plusplus.net/forum/topic/229761/regenumvalue-findet-nicht-alle-values</link><generator>RSS for Node</generator><lastBuildDate>Fri, 10 Apr 2026 05:37:15 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/229761.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 16 Dec 2008 13:28:00 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to RegEnumValue findet nicht alle Values on Tue, 16 Dec 2008 13:28:00 GMT]]></title><description><![CDATA[<p>Hallo, wie ja schon im Titel steht findet in meinem Programm RegEnumValue nicht alle Values, bzw. es findet alle Values wie sich an der Zahl der Funktionsaufrüfe sehen lässt, aber es gibt als Fehler ERROR_MORE_DATA aus, obwohl genug Speicher zur Verfügung steht.</p>
<p>Hier mal der Quelltext(der Registrypfad ist übrigens beliebt gewählt und daran liegts auch nicht):</p>
<pre><code class="language-cpp">HKEY hKey;
    bool check = true;
    char value[1024], wert[1024];
    DWORD size = 1024;
    string pfad = &quot;SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\&quot;;
    RegOpenKey(HKEY_LOCAL_MACHINE, pfad.c_str(), &amp;hKey);
    for(DWORD i = 0; check; i++) {
        long ret = RegEnumValue(hKey, i, value, &amp;size, NULL, NULL, (BYTE*)wert, &amp;size);
        cout&lt;&lt;ret&lt;&lt;endl;
        if(ret == ERROR_NO_MORE_ITEMS) check = false;
        else if(ret != ERROR_MORE_DATA) cout&lt;&lt;value&lt;&lt;endl;
    }
    RegCloseKey(hKey);
</code></pre>
<p>Jemand ne Idee worans liegt?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1631238</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1631238</guid><dc:creator><![CDATA[klappt_nicht]]></dc:creator><pubDate>Tue, 16 Dec 2008 13:28:00 GMT</pubDate></item><item><title><![CDATA[Reply to RegEnumValue findet nicht alle Values on Tue, 16 Dec 2008 14:42:39 GMT]]></title><description><![CDATA[<p>Ein wenig Debuggen hätte für Dich auch ein Augenöffner sein können.<br />
Schau Dir mal Deinen Algorithmus an.</p>
<p>1. Du initialisierst DWORD size = 1024; <strong>vor der Schleife</strong>.<br />
2. Du holst die Daten des ersten Eintrages, die z.B. 4 Bytes lang sind.<br />
3. size steht nun auf 4.<br />
4. Du gehst in den zweiten Schleifendurchlauf!<br />
5. Nehmen wir an, es sind 8 Bytes in dem zweiten Eintrag.<br />
Bingo: Du bekommst ERROR_MORE_DATA</p>
<p><strong>size ist ein in/out Wert!</strong></p>
]]></description><link>https://www.c-plusplus.net/forum/post/1631245</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1631245</guid><dc:creator><![CDATA[Martin Richter]]></dc:creator><pubDate>Tue, 16 Dec 2008 14:42:39 GMT</pubDate></item><item><title><![CDATA[Reply to RegEnumValue findet nicht alle Values on Tue, 16 Dec 2008 14:24:40 GMT]]></title><description><![CDATA[<p>Jo danke, klappt jetzt. Hätte echt ma debuggen sollen. sry.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/1631282</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/1631282</guid><dc:creator><![CDATA[klappt_nicht]]></dc:creator><pubDate>Tue, 16 Dec 2008 14:24:40 GMT</pubDate></item></channel></rss>