Pointer , processmemory , writeprocessmemory



  • hallo.
    ich bin neu im forum da ich ohne hilfe nicht weiterkomme.
    Ich bitte euch mir die punkte "pointer,processmemory,writeprocessmemory
    genau zu erklären was sie mir bringen , ich finde auf youtube keine normalen tutorials dazu bzw. auf deutsch , auf english kann ich leider nur halbwegs folgen.

    [Was ich unter pointer nicht verstehe:]

    Ich weis nicht was ich damit anfangen kann -.- , ich kriege eine adesse aber was bringt sie mir x,x? was kann ich damit machen?
    soweit ich das verstanden habe (ist warscheinlich falsch) ist eine "Adresse" die man halt dan kriegt ein "Speicher" in den man Variablen hineinspeichern kann.

    So zweites ding ist ich muss bestimmt "writeprocessmemory und readprocessmemory lernen so dafür gibts aber iwie kein deutsches tutorial -.- finde keins über google.de weder in youtube.com , vllt hätte da jemand für mich ebenfalls etwas.

    [Was ich gerne Programmieren möchte:]

    Ich weis nicht ob es hier erlaubt ist darüber zu sprechen aber ich möchte gerne einen einfach "Bot" schreiben der mir von stelle zur anderen stelle läuft (coordinaten sind im spiel über der map gleich mitenthalten) und dort in einer belibigen "range" nach einem "namen" sucht und dan dort zu diesem objekt hingeht und "F1-F8" clicken tut und dan mit der maus drauf clickt aufs object.

    Mein freund ist leider für 1 woche auf urlaub und daher kann er mir leider nicht helfen obwohl ich gerne jetzt schon mit dem lernen anfangen möchte.
    er sagte: "Schau ,dass du mal soweit kommst in c++ ,dass du absolut sicher mit pointer umgehen kannst".

    und er sagte ebenfalls ich soll mich mit processmemory , writeprocessmemory auseinander setzen.

    Wenn jemand hier mir die 3. punkte erklären könnte oder vllt auch ein video zum lernen hätte währe ich sehr dankbar.



  • Nacho schrieb:

    Was ich unter pointer nicht verstehe:
    [...]ich kriege eine adesse aber was bringt sie mir x,x? was kann ich damit machen?

    Im Prinzip ist deine Idee von schon richtig, es zeigt (mehr oder weniger) auf eine Stelle im Speicher. Wenn du dir einen Pointer auf der Konsole ausgeben lässt erhälst du einen Wert, wo die Variable gespeichert ist. Und wofür braucht man sie? Die zwei wichtigsten Punkte sind einmal dynamische Bindungen (Wenn du zur die Objektorientierung/Vererbung kommst, weißt du damit mehr anzufangen) und die Lebenszeit der Variable, da sie auf dem Heap angelegt wird, wird die Variable nicht gelöscht, wenn der gültige Block verlassen wirst (Sagt dir Heap und Stack etwas?). Andere Anwendungsbereiche wären zum Beispiel C-Arrays, welche aber eigentlich gar nicht mehr gebraucht werden, da die STL-Container (wie std::vector) diese Funktionalitäten besser und sicherer bereitstellen.

    Wenn du mit Pointern üben willst (und das solltest du) dann spiel einfach mal mit int* oder so rum. Stichwort: Pointerarithmetik, Referenzen(das &)

    Nacho schrieb:

    Was ich gerne Programmieren möchte:[...]

    Ich möchte dir jetzt nicht die Motivation nehmen, aber die erste Zeit wirst du erstmal grundlegende Sachen auf der Konsole machen, bzw. kann ich dir das nur ans Herz legen. Mach auf keinen Fall den Fehler, zu früh mit einer GUI anzufangen.



  • Nacho schrieb:

    ich finde auf youtube keine normalen tutorials dazu

    Tutorials zu Programmierthemen findet man auch nicht allzu häufig auf Youtube. Wenn das gute alte "Lesen" dich nicht zu sehr anstrengt solltest du daher besser auf geschrieben Tutorials (oder noch besser: Bücher) zurückgreifen. In der FAQ gibts eine Liste von guten Büchern.

    bzw. auf deutsch , auf english kann ich leider nur halbwegs folgen.

    Solltest du dann üben/trainieren. Je fortgeschrittener du in der Programmierung bist, desto seltener finden sich Informationen auf deutsch. Englisch ist daher auf Dauer ein Muss, wenn du wirklich ernsthaft programmieren willst.

    [Was ich unter pointer nicht verstehe:]

    Ich weis nicht was ich damit anfangen kann -.- , ich kriege eine adesse aber was bringt sie mir x,x? was kann ich damit machen?
    soweit ich das verstanden habe (ist warscheinlich falsch) ist eine "Adresse" die man halt dan kriegt ein "Speicher" in den man Variablen hineinspeichern kann.

    Fast. Es ist die Adresse von Speicher, wo die Variable liegt. Wozu das gut ist, sagt dir jedes halbwegs sinnvolle Tutorial und Buch (Auch auf deutsch. Aber nicht auf Youtube).

    So zweites ding ist ich muss bestimmt "writeprocessmemory und readprocessmemory lernen so dafür gibts aber iwie kein deutsches tutorial -.- finde keins über google.de weder in youtube.com , vllt hätte da jemand für mich ebenfalls etwas.

    Die Begriffe sind mir so noch nicht untergekommen. Was bringt dich auf die Idee, das lernen zu müssen? Klingt mir nach Hacks, das ist aber fortgeschrittenes Zeugs, da solltest du erstmal Grundlagen lernen (wie z.B. der Umgang mit Pointern).

    [Was ich gerne Programmieren möchte:]

    Ich weis nicht ob es hier erlaubt ist darüber zu sprechen aber ich möchte gerne einen einfach "Bot" schreiben der mir von stelle zur anderen stelle läuft (coordinaten sind im spiel über der map gleich mitenthalten) und dort in einer belibigen "range" nach einem "namen" sucht und dan dort zu diesem objekt hingeht und "F1-F8" clicken tut und dan mit der maus drauf clickt aufs object.

    Irgendeinen Spiele-Bot also, scheinbar mit wenigen bis garkeinen Programmierkenntnissen. Es ist zwar erlaubt hier darüber zu sprechen, allerdings würde ich davon abraten. So ziemlich jeder wird dich bei solchen Themen, bei der Art der Fragestellung und bei "youtube-Tutorials" als präpubertäres Möchtegern-Scriptkiddie abstempeln. Das beste was dir dann passieren kann, ist dass du ignoriert wirst.

    Mein freund ist leider für 1 woche auf urlaub und daher kann er mir leider nicht helfen obwohl ich gerne jetzt schon mit dem lernen anfangen möchte.
    er sagte: "Schau ,dass du mal soweit kommst in c++ ,dass du absolut sicher mit pointer umgehen kannst".

    und er sagte ebenfalls ich soll mich mit processmemory , writeprocessmemory auseinander setzen.

    Wenn jemand hier mir die 3. punkte erklären könnte oder vllt auch ein video zum lernen hätte währe ich sehr dankbar.

    Mit ein paar Zeilen Erklärung ist es nicht getan. Siehe oben, schau nach Tutorials im Netz (geschrieben, nicht gefilmt), und lerne C++ von Grund auf. Geh davon aus, dass du ein paar Wochen investieren musst, bis du anfangen kannst, dir über deinen Bot Gedanken zu machen.



  • pumuckl schrieb:

    Geh davon aus, dass du ein paar Wochen investieren musst, bis du anfangen kannst, dir über deinen Bot Gedanken zu machen.

    Bzw. einige Monate, bis du in den grundlegenden Sachen einigermaßen sicher bist. Kommt natürlich auf die eigene Begeisterung und Lernfähigkeit an.

    Und es ist völlig normal, dass man bei C++ gerade am Anfang öfters auf die Tischkante beißt, der Einstieg ist alles andere als einfach. Hast du denn vorher schonmal programmiert?



  • dankeschön.
    Nein ich bin kein möchtegernKiddie (will nur klarstellen^^)
    nein ich möchte nicht nur das "programmieren" lernen wegen bots oder derartigen sachen. natürlich werde ich dan wenn ich das wissen besitze es auch für sinvolle sachen einsetzen.

    Ich habe ein schönes tutorial vor langer zeit gefunden
    http://ladedu.com/cpp/einf
    dort habe ich die ersten programmier aufgaben gemeistert jedoch beim lesen ists bei mir der fall das wenn ich lese verstehe ich es nur ich weis nicht wie ich es umsetzen soll da mir die beispiele fehlen.



  • Cyres schrieb:

    pumuckl schrieb:

    Geh davon aus, dass du ein paar Wochen investieren musst, bis du anfangen kannst, dir über deinen Bot Gedanken zu machen.

    Bzw. einige Monate, bis du in den grundlegenden Sachen einigermaßen sicher bist. Kommt natürlich auf die eigene Begeisterung und Lernfähigkeit an.

    Und es ist völlig normal, dass man bei C++ gerade am Anfang öfters auf die Tischkante beißt, der Einstieg ist alles andere als einfach. Hast du denn vorher schonmal programmiert?

    Nein das nicht , ich weis das es schwer wird da wenn es bei den meisten bzw. auch bei mir etwas oder das meiste nicht klappt vergeht einfach jemandem die lust ...
    aber ich henge mich rein



  • Nacho schrieb:

    Ich habe ein schönes tutorial vor langer zeit gefunden
    http://ladedu.com/cpp/einf
    dort habe ich die ersten programmier aufgaben gemeistert jedoch beim lesen ists bei mir der fall das wenn ich lese verstehe ich es nur ich weis nicht wie ich es umsetzen soll da mir die beispiele fehlen.

    wie pumuckl schon sagte, ein Buch ist normalerweise weit besser als kostenlose Dinge aus dem Internet. Das Tutoriel kenne ich zwar nicht, aber nen gutes Buch hat noch niemandem geschadet und wenn du den Ergeiz hast, dann kann ich dir "Der C++ Programmierer" empfehlen.



  • Cyres schrieb:

    Nacho schrieb:

    Ich habe ein schönes tutorial vor langer zeit gefunden
    http://ladedu.com/cpp/einf
    dort habe ich die ersten programmier aufgaben gemeistert jedoch beim lesen ists bei mir der fall das wenn ich lese verstehe ich es nur ich weis nicht wie ich es umsetzen soll da mir die beispiele fehlen.

    wie pumuckl schon sagte, ein Buch ist normalerweise weit besser als kostenlose Dinge aus dem Internet. Das Tutoriel kenne ich zwar nicht, aber nen gutes Buch hat noch niemandem geschadet und wenn du den Ergeiz hast, dann kann ich dir "Der C++ Programmierer" empfehlen.

    Alles klar danke.

    wenns hier ein "danke" button geben würde ;3



  • Nacho schrieb:

    wenns hier ein "danke" button geben würde ;3

    Ein "Danke"-Button wäre mir auf jedenfall lieber als ein "Gefällt-mir"-Button 😉



  • ich melde mich hier mal wider und das mit dem Pointer klappt schonmal gut da habe ich nun alles verstanden , andere sache 😉
    habe nun zu "WrideProcessMemory" dies hier von Microsoft gefunden: http://msdn.microsoft.com/en-us/library/windows/desktop/ms681674(v=vs.85).aspx
    währe nett wenn es mir jemand erklären könnte

    habe aber jedoch eine neue frage:
    Wie funktioniert genau eine "SendMessage" funktion?
    http://msdn.microsoft.com/en-us/library/windows/desktop/ms644950(v=vs.85).aspx
    das ist ebenfalls von Microsoft und hoffe auch auf eine erklärung 😉



  • Nacho schrieb:

    Ich bitte euch mir die punkte [...] genau zu erklären [...]

    Nacho schrieb:

    [...] vllt hätte da jemand für mich ebenfalls etwas.

    Nacho schrieb:

    Wenn jemand hier mir die 3. punkte erklären könnte [...]

    Nacho schrieb:

    [...] währe nett wenn es mir jemand erklären könnte

    Nacho schrieb:

    [...] hoffe auch auf eine erklärung 😉

    Was verstehst du denn an der Dokumentation nicht? Hast du konkrete Fragen? Lies: Wie man Fragen richtig stellt.

    btw:

    Nacho schrieb:

    [...] das mit dem Pointer klappt schonmal gut da habe ich nun alles verstanden [...]

    glaub' ich nicht. Was macht

    char* foo( char *a, char const *b )
    {
        char *aa = a;
    
        while( ( *a++ = *b++ ) != '\0' )
            continue;
    
        return aa;
    }
    

    wie?



  • Swordfish schrieb:

    char* foo( char *a, char const *b )
    {
        char *aa = a;
    
        while( ( *a++ = *b++ ) != '\0' )
            continue;
    
        return aa;
    }
    

    Hui, schönes klassisches Beispiel, ich erinnere mich noch, als ich das erste mal so nen konstrukt gesehen habe, aber danach hatte ich die Pointerarithmetik verstanden 😃

    Edit: etwas abstrakter:

    void bar(char* a, const char* b)
    {
        while(*a++ = *b++);
    }
    


  • Nacho schrieb:

    Nein ich bin kein möchtegernKiddie (will nur klarstellen^^)

    Doch.

    Warum kann man so eine Mülltopic nicht einfach schließen?
    Keine Ahnung vor garnichts, youtube-Tutorials(*) nicht in der Lage Doku zu lesen will aber einen Bto programmieren.

    (*) Reicht völlig aus um garnicht mehr ernst genommen zu werden.



  • DevilInside schrieb:

    Nacho schrieb:

    Nein ich bin kein möchtegernKiddie (will nur klarstellen^^)

    Doch.

    Warum kann man so eine Mülltopic nicht einfach schließen?
    Keine Ahnung vor garnichts, youtube-Tutorials(*) nicht in der Lage Doku zu lesen will aber einen Bto programmieren.

    (*) Reicht völlig aus um garnicht mehr ernst genommen zu werden.

    naja der "Mülltopic" ist für mich eine sehr große hilfe.
    das mit der "Doku" nicht jeder ist perfect in english

    (*) Reicht völlig aus um garnicht mehr ernst genommen zu werden.

    naja das musst du ja wissen.

    [bitte an dich , antworte hier nicht mehr fals du für mich persönlich nichts hast das mir hilft wie die anderen netten user.]


Anmelden zum Antworten