Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Wie kann ich eine Delphi-EXE-Datei öffnen?

Frage Entwicklung Datenbanken

Mitglied: imebro

imebro (Level 2) - Jetzt verbinden

11.11.2014, aktualisiert 14:39 Uhr, 1715 Aufrufe, 11 Kommentare

Hallo,

wir nutzen ein Programm, welches in Delphi programmiert ist.
Das Programm ist bereits 17 Jahre alt und wurde damals von einem Mitarbeiter programmiert.
Dieser ist längst in Rente und nun möchten wir ein paar Kleinigkeiten im Programmcode ändern.

Das Programm "Delphi" haben wir jedoch leider nicht...

Gibt es ggf. Alternativen, womit ich die EXE-Datei dieses Programms öffnen kann, um Änderungen vornehmen zu können?
Im hiesigen Fall geht es nur um die Umbenennung eines Auswahlpunktes (anderer Name für eine Auswahl).

Danke und Gruss,
imebro
Mitglied: HellstormDe
11.11.2014 um 09:13 Uhr
Hi,

das würde sich nur mit einem Disassembler auslesen lassen, aber dann habt ihr auch nur den Maschinencode in menschenlesbarer Ausführung. Mir ist zumindest nicht bekannt, dass es für Object Pascal Anwendungen irgendwelche Übersetzer gibt.

Eigentlich könnt ihr also nur dann etwas ändern, wenn ihr den eigentlichen Quellcode des Programmes habt - oder hat den euer MA mit in die Rente genommen?

Gruß,
David
Bitte warten ..
Mitglied: chiefteddy
11.11.2014, aktualisiert um 09:39 Uhr
Hallo,

ein EXE-Programm ist immer ein kompiliertes, dh. in ausführbaren Maschinen-Code übersetztes, Programm. Um ein Programm zu ändern (und zu verstehen), braucht Ihr den (gut dokumentierten und kommentierten) Quell-Code des Programms. Nach den Änderungen muß das Programm (der Quell-Code) wieder neu zu einer EXE (ausführbares Maschinen-Programm) kompiliert (übersetzt) werden.

Also: ohne Quell-Code und Delphi-Compiler werdet Ihr wenig Erfolg haben.

Fragt doch mal Euren Rentner, ob er nicht noch den Quell-Code (im Notfall auch nur auf Papier) hat.

Und wenn Ihr den Quell-Code beschafft habt, reicht sicher auch eine "30 Tage Test-Lizenz" der Delphi-Entwicklungsumgebung für die Lösung des Problems.

http://www.heise.de/download/delphi.html


Jürgen
Bitte warten ..
Mitglied: AnkhMorpork
11.11.2014 um 10:08 Uhr
Den Delphi-Compiler braucht ihr nicht. Der Freepascal-Compiler kann das auch. Allerdings mit 17 Jahre altem Code ...
Nur der Quelltext muss her, da gibt es leider keine Alternativen. Und ein Disassembling wird echt mühsam!

ankh
Bitte warten ..
Mitglied: imebro
11.11.2014 um 10:48 Uhr
OK... danke Euch für Eure Hilfe!

Den Quell-Code haben wir nicht mehr und zu dem Rentner auch keinerlei Kontakt mehr.
Von daher hat sich das wohl erledigt. Aber es soll im kommenden Jahr eh ein neues Programm erstellt werden.
War jetzt halt nur eine Frage, ob man am alten noch für die Zeit etwas ändern kann.

Danke und Gruss,
imebro
Bitte warten ..
Mitglied: WinCobold
11.11.2014 um 13:18 Uhr
Hallo imebro,

vielleicht kannst du die EXE einfach editieren. Das geht natürlich generell nur, wenn der zu ändernde Text im Klartext in der EXE enthalten ist (oder wenn du weißt, wie er verschlüsselt ist) und der neue Text nicht länger ist als der alte. Dann kannst du versuchen, den Text einfach mit dem neuen (ggf. plus Leerstellen) zu überschreiben und die Datei wieder zu speichern (vorherige Sicherung nicht vergessen!). Du brauchst dazu entweder einen Hex-Editor oder zumindest einen, der die vorhandenen Zeichen absolut unverändert lässt, auch die nicht darstellbaren. Ich nehme an, Notepad++ müsste das können, gibt aber bestimmt unzählige andere geeignete Editoren.

Grüße vom
WinCobold
Bitte warten ..
Mitglied: imebro
11.11.2014 um 14:17 Uhr
Hallo,

zunächst habe ich mit "Notepad++" die EXE-Datei editiert und das Wort geändert...
Es ist aber dadurch länger geworden und nach dem Speichern sah ich schon, dass etwas nicht stimmte, weil das EXE-Icon nicht mehr erschien.

Dann habe ich im Internet etwas recherchiert und dabei den "Resource Hacker" gefunden.
Damit kann man EXE-Dateien editieren und auch wieder so abspeichern, dass sie wieder funktionieren (Funktion: "Compile Script")

Im Programm habe ich dann den Auswahlpunkt über die Suche gefunden und umbenannt in den etwas längeren Ausdruck.
Nach Klick auf "Compile Script" konnte ich die EXE-Datei wieder speichern.

Nachdem ich das Programm dann startete, funktionierte alles... und der Auswahlpunkt war auch verändert... sieht also so aus, als ob das funktioniert hat.

Dennoch meine Frage:
Muss ich ansonsten noch etwas bedenken?
Kann es ggf. doch noch versteckte Fehler durch die Umbenennung und Neu-Speicherung geben?

Danke und Gruss,
imebro
Bitte warten ..
Mitglied: WinCobold
LÖSUNG 11.11.2014, aktualisiert um 14:39 Uhr
Hallo imebro,

das einfache Editieren kann natürlich nicht funktionieren, wenn der Text länger wird, weil dann ja die internen Adressierungen nicht mehr stimmen.

Den Resource Hacker kenne ich nicht (sonst hätte ich den ja vermutlich auch erwähnt), daher kann ich auch nicht sagen, was da evtl. schiefgehen kann. Wenn alles zu funktionieren scheint, würde ich es einfach mal drauf ankommen lassen. Für den Notfall solltest du die alte Programmversion aufheben, damit du ggf. schnell wieder zurück kannst. Und je nachdem, was dieses Programm tut, solltest du sehr genau darauf achten, dass die gespeicherten Daten regelmäßig gesichert werden, damit du ggf. so wenig Datenverlust wie möglich hast, wenn doch etwas kaputt geht und du eine Sicherung zurückspielen musst.

Ansonsten viel Erfolg mit der geänderten EXE!

Grüße vom
WinCobold
Bitte warten ..
Mitglied: chiefteddy
11.11.2014 um 14:53 Uhr
Hallo @imebro,

Du hättest in Deiner Fragestellung durchaus darauf hinweisen können, dass Du nur einige Text-Meldungen anpassen wolltest. Du sprachst von "Programm-Code" und der läßt sich so einfach nicht ändern.

Dann hätte man Dir sicher schneller helfen können.

Aber nun hast Du ja eine Lösung gefunden.

Jürgen
Bitte warten ..
Mitglied: imebro
11.11.2014 um 15:04 Uhr
Ja, wenn ich Dein Hintergrundwissen gehabt hätte, dann hätte ich das sicher geschrieben

Mir war nicht klar, dass Änderungen im Programm-Code und Änderungen von Text-Meldungen in einem Programm einen Unterschied machen.
Deshalb meine Laienhafte Beschreibung... sorry

Aber jetzt ist ja eine Lösung gefunden und sie funktioniert ja offenbar auch...

LG
imebro
Bitte warten ..
Mitglied: HellstormDe
11.11.2014 um 15:20 Uhr
Für solche Zwecke ist immer eine vollständige Dokumentation nützlich, auch wenn man sowieso nie Zeit dafür hat. - Dort hätte man nämlich gleich den Quellcode hinterlegen können.
Allerdings sind Eigenkreationen von Mitarbeitern auch immer etwas riskant, vorallem wenn sie in Rente gehen oder anderweitig das Unternehmen verlassen. Es ist immer gut, wenn mehr als nur eine einzige Person in einen Prozess involviert sind.
Bitte warten ..
Mitglied: imebro
11.11.2014 um 15:31 Uhr
...sehe ich jetzt auch so

Danke jedenfalls für Eure Hilfe.

LG
imebro
Bitte warten ..
Neuester Wissensbeitrag
Windows 10

Powershell 5 BSOD

Tipp von agowa338 zum Thema Windows 10 ...

Ähnliche Inhalte
Basic
gelöst Mit Visual Basic Batch Datei öffnen (26)

Frage von Flodsche zum Thema Basic ...

Batch & Shell
gelöst Batch-Datei in Exe-Datei umwandeln - .exe im Autostart (7)

Frage von Luuke257 zum Thema Batch & Shell ...

IDE & Editoren
USB STICK Datei AUTOMATISCH beim anschliessen auf fremden PC öffnen (9)

Frage von Jwanner83 zum Thema IDE & Editoren ...

Heiß diskutierte Inhalte
Windows Userverwaltung
Ausgeschiedene Mitarbeiter im Unternehmen - was tun mit den AD Konten? (34)

Frage von patz223 zum Thema Windows Userverwaltung ...

LAN, WAN, Wireless
gelöst Server erkennt Client nicht wenn er ausserhalb des DHCP Pools liegt (28)

Frage von Mar-west zum Thema LAN, WAN, Wireless ...

Windows Server
Server 2008R2 startet nicht mehr (Bad Patch 0xa) (18)

Frage von Haures zum Thema Windows Server ...