AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Starten wahlweise mit und ohne GUI

Ein Thema von jus · begonnen am 6. Jun 2018 · letzter Beitrag vom 6. Jun 2018
Antwort Antwort
Seite 3 von 3     123   
Benutzerbild von Uwe Raabe
Uwe Raabe

Registriert seit: 20. Jan 2006
Ort: Lübbecke
11.443 Beiträge
 
Delphi 12 Athens
 
#21

AW: Starten wahlweise mit und ohne GUI

  Alt 6. Jun 2018, 17:25
Ist man mit Delphi in der Lage sich ein mini .COM file zu kreiiren als Loader wenn man zwei getrennte Anwendungen erstellt?
Also das in dem App.com die Parameter geprüft werden und je nach Parameter dann die AppCon.exe bzw App.exe geladen wird und entsprechende Parameter rangehängt werden beim Aufruf.
Du meinst, wie bei devenv.com und devenv.exe? Nein, da ist mir bei Delphi keine Möglichkeit bekannt.

Aber dann kannst du ja auch gleich eine AppCmd.exe bauen, die ohne Parameter dann die App.exe aufruft. Wie in einigen anderen Lösungsansätzen flackert dann halt kurz eine Konsole auf.

Ich verstehe auch irgendwie den Sinn nicht: Wenn ich eine CmdLine-Anwendunge ohne Parameter aufrufe und die dann nicht arbeiten kann, dann soll sie mir günstigstenfalls bitte ihre Aufrufkonventionen mitteilen, aber in jedem Fall einen ErrorCode zurückgeben, den ich abfragen kann. Auf keinen Fall sollte sie eine GUI aufmachen, was z.B. in einem unsichtbarem Desktop, einem Build-Skript oder einem FinalBuilder-Projekt gar nicht gehen oder sogar böse enden würde.
Uwe Raabe
Certified Delphi Master Developer
Embarcadero MVP
Blog: The Art of Delphi Programming
  Mit Zitat antworten Zitat
Fritzew

Registriert seit: 18. Nov 2015
Ort: Kehl
678 Beiträge
 
Delphi 11 Alexandria
 
#22

AW: Starten wahlweise mit und ohne GUI

  Alt 6. Jun 2018, 17:26
Ist man mit Delphi in der Lage sich ein mini .COM file zu kreiiren als Loader wenn man zwei getrennte Anwendungen erstellt?
Also das in dem App.com die Parameter geprüft werden und je nach Parameter dann die AppCon.exe bzw App.exe geladen wird und entsprechende Parameter rangehängt werden beim Aufruf.
Du meinst, wie bei devenv.com und devenv.exe? Nein, da ist mir bei Delphi keine Möglichkeit bekannt.

Aber dann kannst du ja auch gleich eine AppCmd.exe bauen, die ohne Parameter dann die App.exe aufruft. Wie in einigen anderen Lösungsansätzen flackert dann halt kurz eine Konsole auf.

Ich verstehe auch irgendwie den Sinn nicht: Wenn ich eine CmdLine-Anwendunge ohne Parameter aufrufe und die dann nicht arbeiten kann, dann soll sie mir günstigstenfalls bitte ihre Aufrufkonventionen mitteilen, aber in jedem Fall einen ErrorCode zurückgeben, den ich abfragen kann. Auf keinen Fall sollte sie eine GUI aufmachen, was z.B. in einem unsichtbarem Desktop, einem Build-Skript oder einem FinalBuilder-Projekt gar nicht gehen oder sogar böse enden würde.
Dem ist nichts!!! hinzuzufügen
Fritz Westermann
  Mit Zitat antworten Zitat
Schokohase
(Gast)

n/a Beiträge
 
#23

AW: Starten wahlweise mit und ohne GUI

  Alt 6. Jun 2018, 17:30
Die Variante auf SO ist ja ganz nett, allerdings reicht es völlig aus, sich an die Parent-Console dranzuhängen, und wenn das fehlschlägt eine eigene Console zu eröffnen:

Delphi-Quellcode:
uses
  Winapi.Windows;

const
  ATTACH_PARENT_PROCESS = DWORD( -1 );

function AttachConsole( dwProcessID: DWORD ): Boolean; stdcall; external 'kernel32.dll';


if not AttachConsole( ATTACH_PARENT_PROCESS ) and not AllocConsole( )
  then
    RaiseLastOSError( );
try
  Write('Here I am!');
  ReadLn;
finally
  FreeConsole();
end;
ABER das ist immer noch nicht dasselbe, als wenn man eine echte Konsolen-Anwendung hat, denn die verhält sich noch ein wenig anders.
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#24

AW: Starten wahlweise mit und ohne GUI

  Alt 6. Jun 2018, 17:39
Mein Grund-Gedanke bei meiner Frage wegen .COM file war halt das sich User falls ich App nun splitte, nicht an neue Aufruf-Konventionen gewöhnen müssen sondern alles bleibt erstmal so wie es ist, man tippt "App" in die Console und "App" startet.
Da man anscheinend kein .com erstellen kann ist mir klar wie ich es mit einem .exe regeln kann, Danke.
Ich bin aus der Vergangenheit/Gegenwart und Zukunft @Fritzew
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
EWeiss
(Gast)

n/a Beiträge
 
#25

AW: Starten wahlweise mit und ohne GUI

  Alt 6. Jun 2018, 18:38
Ich bin aus der Vergangenheit/Gegenwart und Zukunft @Fritzew
Was soll uns das jetzt sagen. Hmm... verstehe ich jetzt nicht.

gruss
  Mit Zitat antworten Zitat
Rollo62

Registriert seit: 15. Mär 2007
4.075 Beiträge
 
Delphi 12 Athens
 
#26

AW: Starten wahlweise mit und ohne GUI

  Alt 6. Jun 2018, 19:50
Zitat:
Zitat von KodeZwerg:
Ich bin aus der Vergangenheit/Gegenwart und Zukunft @Fritzew
Was soll uns das jetzt sagen. Hmm... verstehe ich jetzt nicht.
Na ist doch klar: Der KodeZwerg ist halt ein E8 Gosset Polytope, also ein Quasikristall aus der 8. Dimension, für den sind alle Zeit und Raum immer und überall gleichzeitig da.
Das wird sicher nochmal spannend werden, da freue ich mich auf seine Geschichten

[OT]
Entschuldigung: (zu spät)
[/OT]
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#27

AW: Starten wahlweise mit und ohne GUI

  Alt 6. Jun 2018, 19:57
Aus welchem Jahrhundert stammst Du den?
darauf
Ich bin aus der Vergangenheit/Gegenwart und Zukunft @Fritzew
darauf
Der KodeZwerg ist halt ein
dazu
Und wenn, dann bin ich HAL9000
Gruß vom KodeZwerg

Geändert von KodeZwerg ( 6. Jun 2018 um 23:22 Uhr)
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz