![]() |
Programm unter Linux starten
Hallo,
ich schreibe gerade eine Konsolenanwendung in delphi. Diese starte ich auf einem Debian System mit Wine. Wie kann ich jetzt in meinem Programm ein Programm auf Linux ausführen? Am besten direkt mit screen. Ich habe es jetzt zwar schon mit Shellexec versucht, aber das klappt nicht:
Delphi-Quellcode:
Shellapi.ShellExecute(0,'open',pchar('/opt/ts/programm'),nil,'',1);
|
Re: Programm unter Linux starten
Ich glaube nicht, dass das geht. Wieso installierst Du Dir nicht FreePascal/Lazarus auf Deinem Debian?
|
Re: Programm unter Linux starten
Ok wenn ich gleich Lazarus installiert habe, wie kann ich dann ein Programm starten?
Edit: Wie kann ich denn dann Programme compilieren?? Ich arbeite ja nur über SSH. |
Re: Programm unter Linux starten
|
Re: Programm unter Linux starten
Fehlt halt nur noch, wie kann ich Programm über Kommandozeile Kompilieren?
|
Re: Programm unter Linux starten
lazbuild deinprogramm.lpi
oder fpc deinprogramm.lpr sollte bei konsolenanwendungen keinen unterschied machen bei grafischen geht das mit dem fpc nicht mehr. |
Re: Programm unter Linux starten
Joar ich mache es mit lazbuild.
Aber ich habe keine .lpi datei. Ich habe jetzt gelesen man soll die .dpr datei in .lpr umbennen. Aber dann bekomme ich den Fehler, dass die Server.lpi nicht gefunden wurde. Nenne ich die .dpr in .lpi um dann kommt folgendes:
Code:
Was kann ich denn jetzt da machen?An unhandled exception occurred at $0816B59D : EAccessViolation : Access violation $0816B59D $0809C746 $08120590 $08049DF6 $08049773 $08048DD3 $0804AF12 $0804C201 |
Re: Programm unter Linux starten
Ich weiß, das ist hier ein Delphi-Forum, aber wenn das Programm nicht schon komplett fertig und sehr komplex ist könntest du es ja in einer anderen Programmiersprache schreiben.
C/C++ oder Java sind nicht schwer zu lernen, besonders wenn man schon eine andere Sprache kann und solang man nur Konsolenprogramme schreibt bleibt es auch einfach. :) |
Re: Programm unter Linux starten
Ja das problem ist, da muss ein Server Socket drin sein und halt das, mit dem Programm starten.
Das ganze soll ein Server sein den ich von jedem beliebigen PC aus anwählen kann und damit dann Server neu starten kann. Vielleicht kennt sich ja hier einer gubt mit aus und könnte mir in C++ ein Code zusammenstellen? Da muss nicht viel drin sein, nur der Server Socket und das mit den programmen starten, wenn z.b. jemand etwas an den Server sendet. Den rest kriege ich glaube ich auch selbst hin. |
Re: Programm unter Linux starten
Du kannst natürlich nicht einfach die dpr in lpr umbenennen. Das sind 2 Grundverschiedene Sachen.
Die lpr ist quasi die dpr unter Delphi die kannst du umbenennen. die lpi ist das Lazarus projekt file. Entweder du nimmst einfach den Lazarus Delphi projekt converter, damit sollte das alles automatisch geschehen (umbenennungen, uses anpassungen usw) oder du erstellst dir selbst ein lazarus projekt und fügst die dpr als haupt quelltextdatei ein. Ich finde es etwas unsinnig wegen ein paar Einstellungsproblemen eine andere Programmiersprache zu lernen. Und man kann sehr gut unter Linux Objektpascal und auch Delphi Style programmieren. hab letztes WE erst wieder ein großes programmsystem kennengelernt was 140.000 Zeilen Quellcode umfasst und komplett in Lazarus/Linux geschrieben ist. Mein aktuelles projekt ist mittlerweile auch 130.000 groß. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:38 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