Ohne GetOpenFileName ist alles upgefuckt!?



  • Hey!
    Ich verzweifle gerade total!
    Ich schreibe ein Tool, dessen Aufgabe so aussieht, dass es über CreateProcess einen Prozess startet, in diesem Speicher alloziiert und darein einen Dll-Namen schreibt, um dann über CreateRemoteThread und LoadLibraryA diese Dll zu laden.

    Es soll also der Prozess gestartet und dann eine Dll in diesen injiziert werden.

    Welche Exe gestartet werden soll, kann man über einen GetOpenFileName-Dialog festlegen.
    Das funktioniert auch alles soweit (Sehe ich daran, dass die Dll eine MessageBox ausgibt, ich also weiß, dass sie geladen wurde).

    Mein Problem ist nun wie folgt und ich habe KEINE Ahnung woran das liegt und verstehe außerdem die Welt nicht mehr 😕

    Ich hatte vor, dass man den Pfad zur Exe auch über die Commandline eingeben kann, was aber nicht funktioniert hat.
    Dann habe ich den Pfad hardcoded im CreateProcess-Aufruf hinterlassen und es funktionierte abermals nicht.

    Woran ich erkenne, dass es nicht funktioniert:
    Der Prozess startet sich und crasht sofort wieder!
    Es kommt auch nicht die MessageBox der Dll...

    Das aus meiner Sicht wirklich Seltsame:
    Wenn ich den Pfad z.B. wieder hardcoded drinnen habe, davor aber einfach mal so aus Jucks GetOpenFileName verwende, funktioniert es!

    Auch wenn ich dann gar nicht mit dem Rückgabewert/Pfad von GetOpenFileName arbeite, es funktioniert trotzdem!
    Ich muss die Funktion nur aufrufen und es funktioniert.
    Wenn ich dies aber nicht tue, funktioniert absolut keine Art und Weise...

    Ich verzweifle wirklich... Kann mir freundlicherweise irgendjemand helfen?
    Danke vielmals!



  • du hast schlampig programmiert. deine puffer überläufe etc. kannste bitte selbst suchen. ausserdem is meine hellseherkugel nicht funktionabel da die batterien LEER sind.


Anmelden zum Antworten