Exe Datei mit Visual Studio öffnen

3 Antworten

Vom Fragesteller als hilfreich ausgezeichnet

Ich nehme an, du möchtest dir den Quellcode des Programmes ansehen, das geht nicht. Du kannst ein schon kompiliertes Programm nicht einfach mit einer Entwicklungsumgebung öffnen, da die Quellcodedatei bereits in Maschinencode umgewandelt wurde ("kryptische Zeichen").

Mit Visual Studio kannst du lediglich Quellcode erstellen und verändern und diesen dann zu einem Programm kompilieren, der umgekehrte Weg funktioniert nicht. Und mir fällt auch kein Programm ein, mit dem dies möglich wäre.

Hmm ja das wollte ich machen, schade das es nicht funktioniert... Trotzdem Danke für die Hilfe. :)

0
@kovah

Für .Net-Anwendungen gibt es den .Net-Reflector. Dieser kann dir den Quellcode anzeigen. Allerdings ist dieser an einigen Stellen nicht 1:1 wie es der Programmierer vorgesehen hat, aber es funktioniert 1:1 (viele Wege führen nach Rom). Durch die Anwendung eines Obfuscators wirst du allerdings auch damit Probleme haben, dann sind Objektbezeichnung nichtssagend und es wird schwer für dich einzuarbeiten.

Auch andere Anwendungen kann man "dekompilieren". Das ist allerdings meist illegal und auch in den Lizenzvereinbarungen geregelt. Ein Programm dafür werde ich aber nicht nennen. Auch damit wäre es nicht einfach.

0

exe ist eine compilierte datei, das heißt sie liegt in maschinene code vor. und kann nur sehr teoretisch und in sehr schnelchter qualität decompiliert werden. Du brauchst eine projektdatei, des betreffenden programms

Das stimmt nicht. Nicht jede ausführebare Datei (.exe) liegt im Maschinencode vor. Vb.Net-Anwendungen nämlich nicht. Siehe dafür CLS, CLR und so weiter. Dafür brauchst du das .Net-Framework, welches diesen Code Just-in-time in Maschinencode umwandelt.

0
@CrystalixXx

ja es gibt auch ausnahmen, trotzdem wurden diese Dateien auch kompiliert. Ob nun in Maschinencode oder in Bytecode ist visual studio auch egal

0
@xXodemx

Natürlich wurde sie kompiliert. Aber eben nicht in Maschinencode. Daher ist diese Aussage von dir unweigerlich falsch.

0
@CrystalixXx

wieso das denn? schonmal vewrsucht bytecode in visual studio zu öffnen? Klugscheißer jemand anders voll

0
@xXodemx

Du machst eine Aussage: "exe ist eine compilierte datei, das heißt sie liegt in maschinene code vor."

Kurz gefasst: kompilierte Datei = immer Maschinencode

Daraus folgt: Eine kompilierte Datei ist niemals etwas anderes.

Das ist nun einmal falsch, weil eine kompilierte Datei (speziell des .Net-Frameworks betreffend) im IL vorliegt.

Kurz: IL ungleich Maschinencode

Warum du jetzt von Bytecode schreibst ist mir unklar. Du darfst aber auch gerne eine dieser Plattform angemessene Sprachkultur an den Tag legen.

0
@CrystalixXx

Oh wie ich solche Leute hasse -.-

Bytecode - zu deiner Information wird in der programmiersprache Java generiert - ist vergleichbar mit dem Code der beim kompilieren von z.B. C# prgrammen gneriert wird (ansatzweise).

Wenn du mich jetzt darauf festnagelst, dass ich nicht neben Maschinencode alle zwischen Stufen und Variationen aufgelistet habe, dann tust du mir ehrlich gesagt ein wenig leid.

Aber naja ich fang dann mal an:

  • Bytecode

  • Kompilierter c# code

  • Maschinencode

  • Hamstersimulatorzwischencode

  • ach kein bock mehr.

Ich hab besseres zu tun, als bei jeder meiner Antworten darauf zu achten, dass auch ja jede noch so kleine Ausnahme berücksichtigt wurde. Besonders wenn der Fragesteller offensichtlich ein Anfänger ist und mit bytecode und konsorten sowieso nichts anfangen kann. Von mir aus kann ich ja auch mal alle deine Antworten auf eventuelle Fehlinterpretationen hin untersuchen, ich wette ich würde einiges finden. Also bitte verschone mich und den Fragesteller mit dem Rumgespame von minimal-Besserwisser-Korekturen.

Zum Schluss noch einen kleinen Wikipediaausschnitt:

"Bei der Kompilierung eines Computerprogrammes wird meist aus dem Quelltext eine Bibliothek oder ein ausführbares Programm erzeugt, die je nach Plattform beispielsweise als ausführbare Datei (executable) oder Binärdatei bezeichnet werden. "

0
@xXodemx

Dich zwingt niemand zu antworten. Falls du meine Antworten durch gehen willst und jede kommentieren willst, dann bitte.

Vielleicht fängst du auch an meine Sätze zu verstehen. Es ging lediglich um deine Aussage, die so, wie sie da steht, falsch ist. Ich bin eben ein Mensch, der viele sehr genau nimmt. Falls du damit nicht klar kommst ist es dein Problem, dann beachte meine Kommentare einfach nicht. Aber dein Kommentar passt gerade überhaupt nicht zu meinen. Anscheinend schreiben wir aneinander vorbei. Wie dem auch sei ...

0

Also ich weiß nicht ob es völliger quatsch ist was ich schreibe :) aber ich meine das dass nicht geht weil die datei nicht mit vba gemacht worden ist. (Kann mich aber auch irren)

Das ist ne gute Frage, ich hab angenommen so ein Programm mit tausend unterstützten Programmiersprachen kann sowas?!

0

Genau. Das ist Quatsch.

0

Mit C# unter MS Visual Studio in einer Konsolen - Anwendung neues Fenster öffnen?

Hallo, Community!

Ich habe eine Frage zu einer Anwendung die ich in MS Visual Studio m.H. von Visual C# (Programmiersprache unter .NET) für MS Windows entwickle: Ich möchte in einer ganz normalen Konsole ein zweites Fenster öffnen, indem ich in der aktiven .EXE (Anwendung) "start" eingebe, wie es bei der echten CMD von Microsoft möglich ist (siehe: ANHANG). Diese Instanz soll normal neben der ersten weiterlaufen und es soll auch möglich sein - wie bei einzelnen Fenstern in MS Windows zwischen beiden Fenstern zu wechseln.

Diesen CODE habe ich bis jetzt:

           #region START NEW
            if (cmd.ToLower() == "start")
            {
                Console.WriteLine("start new window (CMD)...");
                Console.WriteLine("");

                System.Threading.Thread.Sleep(1000);
                Console.Write(".");
                System.Threading.Thread.Sleep(500);
                Console.Write(".");
                System.Threading.Thread.Sleep(500);
                Console.Write(".");
                System.Threading.Thread.Sleep(500);
                Console.Write("\b \b");
                System.Threading.Thread.Sleep(500);
                Console.Write("\b \b");
                System.Threading.Thread.Sleep(500);
                Console.Write("\b \b");
                System.Threading.Thread.Sleep(500);
                Console.Write(".");
                System.Threading.Thread.Sleep(500);
                Console.Write(".");
                System.Threading.Thread.Sleep(500);
                Console.Write(".");
                System.Threading.Thread.Sleep(1000);

                Console.WriteLine("               ERROR");
                Console.WriteLine("");                    
            }
            #endregion

Wie dem CODE zu entnehmen ist, wird natürlich noch KEIN neues Fenster geöffnet, sondern ich habe - um den Fall "start" mit einer Aufgabe zu versehen - die Konsole nur "ERROR" schreiben lassen (siehe: ANHANG).

Schon im Voraus vielen Dank für eure Hilfe!


ANHANG: - CMD (MS) - "start".png = in original CMD mehrere Fenster öffnen - CMD (Tools) - "start".png = .EXE meiner eigenen Datei > Fehler bei "start"

LINK: - https://www.dropbox.com/s/v43ocskt1xh0bdm/CMD%20-%20Tools%20%28Windows%29.exe?dl=0 = .EXE - Download über Dropbox (https://www.dropbox.com/) zum Test*


*CMD - Konsole: zum Sehen aller Befehle in der Konsole "help" eingeben

...zur Frage

Was möchtest Du wissen?