Registry-Values Problem



  • Danke aber ich scheitere nicht an der Übersetzung.
    Ich hab nur mein Programm gerade nicht in der Nähe und kann deshalb auch nicht nachschaun.



  • Morgen!
    Ich hab es gestern noch einmal probiert aber egal was ich mache ich mache es falsch. Es wird zwar jetzt kein Fehler mehr angezeigt aber dafür sonst auch nichts 😡

    CU XBert



  • XBert schrieb:

    Ich hab es gestern noch einmal probiert aber egal was ich mache ich mache es falsch. Es wird zwar jetzt kein Fehler mehr angezeigt aber dafür sonst auch nichts 😡

    Tja, und solange du CStolls Frage nicht beantwortest, wird sich daran wohl auch nichts ändern.

    Es wäre übrigens klug, den Wert, auf den lpcbData zeigt, in der Schleife immer wieder neu zu setzen, denn der Aufruf setzt ihn auf die tatsächliche Größe.



  • Ich weiß das die Folgende eine dumme Frage ist aber was meinst du mit Wert von lpcbData (lpcbData=1024???stimmt wohl nicht ).
    Ich sitz auf der Leitung 😕



  • XBert schrieb:

    Ich sitz auf der Leitung 😕

    Dann zeig doch endlich den relevanten Code, damit man dir helfen kann. Der Wert 1024 für lpcbData ist jedenfalls schlecht. Das muss ein Zeiger sein!



  • Es ist genau der code aus der MSDN nur mit den weiteren zwei Variablen lpData und lpcbData die beide leer sind.



  • XBert schrieb:

    Es ist genau der code aus der MSDN nur mit den weiteren zwei Variablen lpData und lpcbData die beide leer sind.

    Was sollen "leere" Variablen sein? NULL? Uninitialisiert? Man weiß es nicht, weil du deinen Code nicht zeigst!

    Willst du keine Hilfe?



  • Sie sind Initialisiert aber haben noch keien Wert.

    LPBYTE lpData;
    LPDWORD lpcbData;
    


  • XBert schrieb:

    Sie sind Initialisiert aber haben noch keien Wert.

    Sie sind uninitialisiert. Diese Zeiger zeigen also irgendwo in den Speicher. Die Funktion versucht, dorthin zu schreiben, und das knallt.

    Du musst ein hinreichend großes BYTE-Array und ein DWORD anlegen, in das DWORD die Größe des BYTE-Arrays schreiben und dann die Adressen der beiden übergeben.



  • Was versteht man unter Byte-Array ?

    So?

    Byte-Array = eine Zahl;
    DWORD temp=&Byte-Array;
    


  • XBert schrieb:

    Was versteht man unter Byte-Array ?

    Weißt du nicht, was ein Array ist?

    BYTE dasIstEinByteArray[42];
    

    XBert schrieb:

    DWORD temp=&Byte-Array;
    

    In das DWORD soll die Größe des Arrays, nicht seine Adresse. Kann es sein, dass du noch ziemlich große Lücken bei den Grundlagen hast? 😉



  • Das fürchte ich auch aber das Byte vor dem Array hat mich verwirrt weil ich nur char-Arrays kenne.


Anmelden zum Antworten