Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Exemod, nur leere Ausgabe (https://www.delphipraxis.net/150619-exemod-nur-leere-ausgabe.html)

SyntaxXx 22. Apr 2010 07:00


Exemod, nur leere Ausgabe
 
Hallo und zwar habe ich jetzt letzens was interesanntes gefunden.
Dort hat jemand 2 .exe Dateien gecodet.

In der Ersten gibt er einen Text und den Pfad zur anderen .exe Datei an.
Wenn er dann auf einen button klickt, und dann die andere Datei starte, dann steht der Text auch da drin.

Das fand ich doch sehr interessant und wollte das natürlich auch mal probieren.
Aber bei mir bekomme ich nur eine leere ausgabe.

Im beispiel wurde "Exemod" verwendet.


SourceCode .exe1

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
if OpenDialog1.Execute = true then
Edit1.Text := OpenDialog1.FileName; // 
Add2File('YourString',Edit1.Text,Edit2.Text);
SourceCode .exe2

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var YourString : String;
begin
ExtractFromExe('YourString',YourString);
showmessage(YourString);
end;
Wenn ich das jetzt genau so, also in der einen den Pfad und nen Text angeben, auf den button klicke und dann die andere .exe starte, dann bekomme ich aber in der Messagebox nur ne leere ausgabe.


In Edit1.Text steht der Pfad zur anderen Datei
In Edit2.Text steht mein Text


Ich verwende Delphi2009.
Der im Beispiel hatte Delphi 2005.
Aber eigendlich sollte das doch alles funktionieren.


Könnt ihr mir helfen?

himitsu 22. Apr 2010 07:43

Re: Exemod, nur leere Ausgabe
 
Erstmal: Wenn du von Fremdkomponenten redest, dann gibt nächstes Mal bitte einen Link zur Komponente mit an (vorallem wenn es keine der Bekanteren ist, welche viele kennen)

Zweitens: ExeMod ist nicht unicodefähig und es gibt demnach seit Delphi 2009 Probleme damit.
(Hab auf die Schnelle auber nur eine Version 1.00 gefunden)

Einfache/Schnelle Lösung: Ändere in der Unit alle String und PChar in AnsiString und AnsiChar.


Drittens: Ist der Speicherort für die Daten in der Exe nicht so schön ... ich würde da zu einer Speicerung in den Resourcen (Delphi-Referenz durchsuchenUpdateResource und Co.) raten.

Viertens ist sowas insgesamt keine gute Idee, wenn Anwendungsdateien (EXE) öfters und vorallem auch auf fremden Rechnern verändert werden sollen,
denn die Virenscanner schleigen bei sowas gerne mal Alarm, da bei deränderung der Signatur eine Datei z.B. von einem Virenbefall ausgegangen werden kann.


Alle Zeitangaben in WEZ +1. Es ist jetzt 11:39 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz