argv[0] - schreiben



  • Hi,

    Folgendes Szenario:

    programm.exe wird ausgeführt und möchte in programm.exe (sich selbst, bzw. die Datei) etwas schreiben/speichern. Das, was ich speichern möchte soll nicht in eine neue Datei/oder die Registry von Windows geschrieben werden!

    programm.exe: (so in etwa stelle ich mir das vor)

    ------------------ -> 0 KB
    main () {
    schreibwas();
    return;
    }
    ------------------ -> 100 KB
    Irgendein Freiraum, hier
    soll programm.exe
    etwas schreiben.
    ------------------ -> 200 KB

    Unter Windows kann ich ja nicht ohne weiteres auf die Datei, die gerade ausgeführt wird zugreifen und den Inhalt ändern.

    Konstrukte mit fopen ... argv[0] ... .exe scheinen mir daher sinnlos.

    Wie mache ich soetwas, bzw. nach was muss ich suchen wenn ich soetwas machen möchte.

    Bin nicht so bewandert auf dem Gebiet, was die Fachbegriffe angeht, hoffentlich versteht Ihr mich.

    Gruß, guest.



  • Was willst du?
    Willst du in die exe hineinschreiben? Zur Laufzeit?

    Was ist denn das Ziel des Ganzen? 🙄



  • In die EXE kannst Du nicht schreiben, während diese ausgeführt wird. Sie ist von Windows gesperrt!

    Zudem ist das wirklich ein NoNo. Unter Vista geht das gar nicht, außer Du startest Dein Programm als Admin, sollte z.B. im Programme Verzeichnis liegen.

    Weiterhin werden "empfindliche" Virenscanner ihre wahre Freude haben... 🙂



  • Ok, danke.

    Ich hab mir überlegt das ganze durch hin- und herkopieren zu machen (...) und werd mich im ASM Bereich noch umhören.

    Mein Ziel, keine Sorge - keine Malware. Ich fand die Idee attraktiv ein kleines in einem Tool, welches Logindaten zu einem Account benötigt diese gleich in der ausführbaren Datei zu speichern und nach Möglichkeit zu ändern. Da die Datei mal kurz auf USB oder auch verschickt wird, sollten sich die Daten nicht ändern, aber änderbar bleiben^^ Naja des alles zu erklären ist mir aber zu viel - ich wollt halt alles bei einer Datei belassen...

    thx



  • guest_quest schrieb:

    Ok, danke.

    Ich hab mir überlegt das ganze durch hin- und herkopieren zu machen (...) und werd mich im ASM Bereich noch umhören.

    Das spielt gar keine Rolle. Selbst mit Assembler kannst Du nicht in die datei schreiben. Punkt! Das ist keine Frage der Sprache sondern ene Frage was das OS erlaubt.



  • Martin Richter schrieb:

    Unter Vista geht das gar nicht...

    vista? das will doch keiner haben.
    @op: such mal im internet nach 'self modifying executables' und ähnlichen schlagwörtern. ich bin überzeugt, du findest ne menge lesestoff.
    🙂



  • ~fricky schrieb:

    vista? das will doch keiner haben.

    Du hörst auch auf jede Propaganda ? 🕶

    Ich habe seit dem ersten Tag an dem Vista verfügbar war auf allen meinen privaten Rechner auch Vista installiert und will nichts mehr anderes.

    Viel zu viele gute Features gegenüber XP... aber jeder darf seine eigene Meinung haben!

    Just my 2 cents!



  • Martin Richter schrieb:

    ~fricky schrieb:

    vista? das will doch keiner haben.

    Du hörst auch auf jede Propaganda?

    nene, ich war ca. 3...4 wochen echter 'vista' user, aber hab's dann aufgegeben. es gab viele probleme, hauptsächlich mit älterer software, die ich aber dringend benötige.

    Martin Richter schrieb:

    Ich habe seit dem ersten Tag an dem Vista verfügbar war auf allen meinen privaten Rechner auch Vista installiert und will nichts mehr anderes.

    du bist ja auch ein fan, ich bin nur benutzer. das ist ein himmelweiter unterschied.
    🙂



  • ~fricky schrieb:

    du bist ja auch ein fan, ich bin nur benutzer. das ist ein himmelweiter unterschied.
    🙂

    Selbst mit Smiley stellt sich mir die Frage wie Du darauf kommst... 😕



  • Martin Richter schrieb:

    ~fricky schrieb:

    du bist ja auch ein fan, ich bin nur benutzer. das ist ein himmelweiter unterschied.
    🙂

    Selbst mit Smiley stellt sich mir die Frage wie Du darauf kommst... 😕

    dieser satz:

    Martin Richter schrieb:

    Ich habe seit dem ersten Tag an dem Vista verfügbar war auf allen meinen privaten Rechner auch Vista installiert und will nichts mehr anderes.

    z.b. deutet darauf hin, dass du dem thema 'vista' nicht ganz unbefangen gegenüberstehst.
    🙂



  • Martin Richter schrieb:

    Viel zu viele gute Features gegenüber XP

    weil wir gerade dabei sind: ein freund (übrigens kein programmierer) beklagt sich hauptsächlich über diese seltsamen 'vista'-probleme:
    1. obwohl man den 'media player' schliesst, spielt er zumindest den audio-part weiter. nur der prozess-killer kann ihm einhalt gebieten.
    2. screenshots (taste 'druck') erzeugt seltsam verwischte und absolut unbrauchbare schwarz/weiss-bilder.
    3. einige dateien lassen sich zwar löschen (der explorer zeigt sie nicht mehr an), sind aber beim nächsten neustart alle wieder da.
    so viel zu vista 👎
    was mir noch einfällt: als ich vista evaluierte, konnte ich bei ordnern, die .wavs und .mp3s enthielten die grösse der dateien nur anzeigen, nachdem ich dies explizit ausgewählt hatte. trotzdem schaltete 'vista' beim nächsten neustart wieder auf die default-ansicht um (so unsinnige angaben wie samplingrate, interpret, genre, etc. die einen primär nicht interessieren).
    🙂


Log in to reply