Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Exe ohne Entwicklungsumgebung starten (https://www.delphipraxis.net/152433-exe-ohne-entwicklungsumgebung-starten.html)

Maddin1 22. Jun 2010 20:33

Exe ohne Entwicklungsumgebung starten
 
Hallo liebe Community!

Ich habe neulich ein Programm geschrieben,
und ich bin eigentlich schon so stolz darauf (obwohl es nur Snake ist^^),
dass ich es gerne meinen Freunden zeigen wollte.
Das Problem ist nur, dass sich die .exe nicht ohne
die Dll's auf dem Entwicklungscomputer öffnen lässt.
Ich habe nun schon ein wenig geforscht
und gesehen, dass man bei den Projekteinstellungen
beim Linker Dynamische RTL deaktivieren muss,
genau wie bei den Packages die Laufzeit-Packages.
Problem ist nur, dass dann Packages wie VCL fehlten
und ich kann das Projekt nicht einmal mehr kompilieren.

(Ich benutze im Übrigen den RAD C++ Builder 2009.)

Könntet ihr mir vielleicht sagen,
wie ich mein Programm auf anderen Rechnern
zum Laufen bringe?

Liebe Grüße,
Maddin

rollstuhlfahrer 23. Jun 2010 07:45

AW: Exe ohne Entwicklungsumgebung starten
 
also alleine an der VCL kann es ja wohl nicht hängen. Dann starte die EXE doch auf einem Nicht-Entwicklungs-Rechner und schreibe dir die Namen der DLLs auf, die Fehlen. Windows produziert da recht aussagekräftige Fehlermeldungen. Dann schaust du auf deinem Entwicklungsrechner nach den DLLs (Sie müssen sich alle in den Suchpfaden befinden) und kopierst diese in das Verzeichnis auf dem anderen Rechner wo die EXE jetzt ist. Dann solltest du sie starten können.

Bernhard

PS: Klingt komisch, dass von Haus aus irgendwelche DLLs mitgeliefert werden müssen.

mkinzler 23. Jun 2010 07:47

AW: Exe ohne Entwicklungsumgebung starten
 
Von Haus aus nicht.

himitsu 23. Jun 2010 08:26

AW: Exe ohne Entwicklungsumgebung starten
 
Zitat:

Zitat von mkinzler (Beitrag 1030954)
Von Haus aus nicht.

auf Deutsch (die lange Version):

Delphi erstellt grundsätzlich nur native Anwendungen, welche außer der WinAPI (also den windowseigenen DLLs, welche man nicht mit ausliefern muß) nichts benötigt.

Es sei denn:
- man sagt Delphi, daß man z.B. die VCL nicht mit einkompilieren will,
dann muß man die entsprechenden Delphi-DLLs mit ausliefern
- oder man nutzt selber irgendwelche externe Dinge, welche man dann natürlich auch mitgeben muß.


Aber ohne genauere Fehlermeldungen oder ein Testprojekt kann hier keiner genaueres aussagen/helfen.

Bernhard Geyer 23. Jun 2010 08:42

AW: Exe ohne Entwicklungsumgebung starten
 
Ich hoffe deine D2009-Exe wird nicht unter Win9x/ME/NT/2000 gestartet? Dort wird sie nicht laufen. Bei W2K AFAIK erst mit allen installierten SP's.

Maddin1 23. Jun 2010 20:02

AW: Exe ohne Entwicklungsumgebung starten
 
Dankeschön für die Antworten.
Ich dachte ja, dass man alle nötigen Komponenten durch eine
Einstellung im Builder mitkompilieren lassen kann, auf dass das Programm eigentlich auf jedem Windowssystem ab XP läuft.


Also die Fehlermeldung gibt folgendes aus:
Project1.exe-Komponente nicht gefunden.
Die Anwendung konnte nicht gestartet werden, weil rttl120.bpl nicht gefunden wurde. Neuinstallation der Anwndung könnte das Problem beheben.

Aber man kann doch nicht jedes Mal 20.000 dll aus dem Verzeichnis des Entwicklungscomputers kopieren um es dem Anwender mitzugeben, oder?
Ich meine, das wäre eigenartig, wenn Borland das nicht schon automatisiert hätte ;)

fkerber 23. Jun 2010 20:04

AW: Exe ohne Entwicklungsumgebung starten
 
Hi!

Geht es denn überhaupt um Delphi?
Ich dachte, aus deinem ersten Post zu lesen, dass du mit C++ arbeitest?


Grüße, Frederic

Maddin1 23. Jun 2010 20:10

AW: Exe ohne Entwicklungsumgebung starten
 
Nunja, eigentlich C++.
Aber da geht es ja vielmehr um eine Projekteinstellung (hoffe ich).
Und da nehmen sich C++ und Delphi im RAD Studio ja eigentlich nichts,
denke ich mal.

Luckie 23. Jun 2010 21:21

AW: Exe ohne Entwicklungsumgebung starten
 
Da werden die Laufzeitpackages nicht mit gelinkt.

mkinzler 23. Jun 2010 21:28

AW: Exe ohne Entwicklungsumgebung starten
 
Zitat:

Zitat von Luckie (Beitrag 1031163)
Da werden die Laufzeitpackages nicht mit gelinkt.

Was man leicht ändern kann:
Projektoptionen->Packages den Haken bei Laufzeitpackages verwenden abwählen.

Danach Projekt neu erzeugen

Maddin1 24. Jun 2010 14:21

AW: Exe ohne Entwicklungsumgebung starten
 
Wenn ich den Haken bei den Laufzeitpackages wegnehme,
dann kann ich mein Projekt nicht mehr vollständig kompilieren
und es kommt die Meldung vom Linker: Error: Datei TRAYICON.RES kann nicht geöffnet werden.

turboPASCAL 24. Jun 2010 16:00

AW: Exe ohne Entwicklungsumgebung starten
 
Dann schau doch mal nach ob sie TRAYICON.RES überhaupt vorhanden ist und ob der Pfad in den Bibliothekspfadangaben stimmt.

Maddin1 25. Jun 2010 11:08

AW: Exe ohne Entwicklungsumgebung starten
 
Wo finde ich die?
Ich habe ja nichts extra eingebunden oder so.
Die müssen ja mit in den Packages sein,
die ich mit der Option ja ausgestellt habe.

Maddin1 28. Jun 2010 07:27

AW: Exe ohne Entwicklungsumgebung starten
 
Kann es sein, dass ich den BDS Ordner mitliefern muss?

Habe das jetzt mal woanders gelesen.
Und dass es in der Enterpriseversion vom RAD Studio einen
Installshield Express gibt, womit man das einfach machen kann.

Kann man sich sowas auch selbst machen?

Bernhard Geyer 28. Jun 2010 09:49

AW: Exe ohne Entwicklungsumgebung starten
 
Zitat:

Zitat von Maddin1 (Beitrag 1031990)
Kann es sein, dass ich den BDS Ordner mitliefern muss?

Mit sicherheit ist das verboten! Maximal müsstest du die BPL und entsprechenden Übersetzungdateien (*.DE für Deutsch mitliefern)
Zitat:

Zitat von Maddin1 (Beitrag 1031990)
Und dass es in der Enterpriseversion vom RAD Studio einen
Installshield Express gibt, womit man das einfach machen kann.

Vergiss Installshield. In 99% der Fälle reicht ein kostenloses Tool wie InnoSetup. Und seit Windows 7 braucht man auch eine MSI-Installer mehr um "Designed for Windows 7" "Aufkleber" zu bekommen falls man das wünscht.

Maddin1 28. Jun 2010 17:16

AW: Exe ohne Entwicklungsumgebung starten
 
Liebe Community, ich habe den Übeltäter gefunden.

In meiner Form hatte ich die Komponente CSpinEdit benutzt,
als ich diese jedoch erst löschte, trat trotzdem der Linkfehler
mit dem TrayIcon auf.
Die Sache ist - ich weiß nicht, inwieweit sich das auf Delphi übertragen lässt -
aber, der/die/das SpinEdit benutzt mehrere Includes in der cpp, sowie in der h Datei,
die manuell zu löschen sind.
Dann lässt sich das ganze Programm ohne Laufzeitpackages, sowie statische RTL kompilieren
und auch benutzen.

Ich danke euch dennoch, für die tatkräftige Unterstützung :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:43 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 by Thomas Breitkreuz