AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Delphi Anhand von ParamStr entscheiden welches Formular startet
Thema durchsuchen
Ansicht
Themen-Optionen

Anhand von ParamStr entscheiden welches Formular startet

Ein Thema von easywk · begonnen am 25. Aug 2004 · letzter Beitrag vom 25. Aug 2004
Antwort Antwort
easywk

Registriert seit: 9. Jul 2003
Ort: Schwanewede
117 Beiträge
 
Delphi 7 Enterprise
 
#1

Anhand von ParamStr entscheiden welches Formular startet

  Alt 25. Aug 2004, 09:09
Hallo,

ich wollte gerne beim Start des Programms anhand von ParamStr() entscheiden, mit welchem Formular ich beginne. Dazu habe ich in die Projektdatei folgendes eingetragen:
Delphi-Quellcode:
Application.Initialize;
if (ParamCount>0) and (ParamStr(1)='1') then
  Application.CreateForm(Tform1,form1)
else Application.CreateForm(Tform2,form2);
Application.Run;
Beim Compilieren gab es keine Probleme, gestartet ist die Anwendung aber nicht. Danach war auch die "Run-Funktion" unter der Delphi-IDE weg. Wenn ich jetzt versuche das Projekt auf zu machen, mault Delphi rum "Der Aufruf von Application.CreateForm fehlt oder ist nicht korrekt" und das Projekt kann nicht aufgemacht werden.

Daher folgende Fragen:
(1) Wie komme ich jetzt an das Projekt, ich kann ja nicht mal den Eintrag rückgängig machen
(2) Wie muss ich es richtig anstellen, dass ich anhand von ParamStr() entscheiden kann, welches das Hauptformular meiner Anwendung ist?

Thanks für help
cu easywk

P.S. Delphi5, Windows2000
Björn
if all else fails - read the instructions
  Mit Zitat antworten Zitat
Benutzerbild von Sourcemaker
Sourcemaker

Registriert seit: 3. Sep 2003
Ort: Westoverledingen
264 Beiträge
 
Delphi 11 Alexandria
 
#2

Re: Anhand von ParamStr entscheiden welches Formular startet

  Alt 25. Aug 2004, 09:17
Hallo,

zum Bearbeiten einfach mit einen Texteditor öffnen.

Gruß

Frank
Frank
  Mit Zitat antworten Zitat
easywk

Registriert seit: 9. Jul 2003
Ort: Schwanewede
117 Beiträge
 
Delphi 7 Enterprise
 
#3

Re: Anhand von ParamStr entscheiden welches Formular startet

  Alt 25. Aug 2004, 09:23
Zitat von Sourcemaker:
zum Bearbeiten einfach mit einen Texteditor öffnen.
Danke. Da hätte ich auch drauf kommen können
Bearbeiten geht jetzt wieder, aber mein Ursprungsproblem ist damit noch nicht gelöst
Björn
if all else fails - read the instructions
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#4

Re: Anhand von ParamStr entscheiden welches Formular startet

  Alt 25. Aug 2004, 09:25
Das ist doch ganz easy...
Zitat:
(1) Wie komme ich jetzt an das Projekt, ich kann ja nicht mal den Eintrag rückgängig machen
-> NotePad
Zitat:
(2) Wie muss ich es richtig anstellen, dass ich anhand von ParamStr() entscheiden kann, welches das Hauptformular meiner Anwendung ist?
Einfach im Menu unter Project\Options\Forms die List "auto create forms" leeren.
Die IDE ist einfach zu Blöd um diesen Wert anhand der Application.CreateFrom calls in der Projekt-datei zu setzen.
Ist nicht getestet, sollte aber IMHO gehen.
  Mit Zitat antworten Zitat
easywk

Registriert seit: 9. Jul 2003
Ort: Schwanewede
117 Beiträge
 
Delphi 7 Enterprise
 
#5

Re: Anhand von ParamStr entscheiden welches Formular startet

  Alt 25. Aug 2004, 09:36
Nein, auch wenn ich kein einziges Formular mehr im "auto create" habe, funktioniert die beschriebene if ... else ... für das Application.CreateForm nicht. Ich habe dann wieder die gleichen Probleme
Björn
if all else fails - read the instructions
  Mit Zitat antworten Zitat
Robert_G
(Gast)

n/a Beiträge
 
#6

Re: Anhand von ParamStr entscheiden welches Formular startet

  Alt 25. Aug 2004, 10:27
Ich habe es gerade mal getestet...
Delphi ist so blöd, dass es in der DPr CreateForm calls nicht in If-clauses oder ähnlichem akzeptiert.
Man _muss_ es anscheinend in eine extra Unit packen ...
Delphi-Quellcode:
unit Unit3;

interface
uses
  Forms,
  Unit1 ,
  Unit2 ;

procedure openForms;

implementation

procedure openForms;
begin
  if (ParamCount > 0) and (ParamStr(1) = '1') then
    Application.CreateForm(TForm1, Form1)
  else
    Application.CreateForm(TForm2, Form2);
end;

end.
damit man dann das hier ...
Delphi-Quellcode:
  Application.Initialize;
  openForms;
  Application.Run;
... ausführen kann.

Ich weiß schon, warum ich keinen Bock mehr auf Borlands buggy IDEs habe.
  Mit Zitat antworten Zitat
easywk

Registriert seit: 9. Jul 2003
Ort: Schwanewede
117 Beiträge
 
Delphi 7 Enterprise
 
#7

Re: Anhand von ParamStr entscheiden welches Formular startet

  Alt 25. Aug 2004, 10:49
Prima, jetzt geht es Danke!
Björn
if all else fails - read the instructions
  Mit Zitat antworten Zitat
Antwort Antwort


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 01:49 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