AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Form mit Kommandozeilenkompiler in Objektablage verschieben
Thema durchsuchen
Ansicht
Themen-Optionen

Form mit Kommandozeilenkompiler in Objektablage verschieben

Ein Thema von pszopp · begonnen am 13. Jun 2006 · letzter Beitrag vom 21. Jun 2006
Antwort Antwort
pszopp

Registriert seit: 7. Sep 2005
Ort: Alsdorf
95 Beiträge
 
Delphi 2010 Professional
 
#1

Form mit Kommandozeilenkompiler in Objektablage verschieben

  Alt 13. Jun 2006, 15:09
Hallo Zusammen,

Ich habe ein Formular erstellt, welches ich der Objektablage hinzufügen möchte.
Normalerweise mache ich das in der IDE über den Kontextmenü-Punkt "Der Objektablage hinzufügen...".

In diesem Fall würde ich das aber lieber mit einer Batch-Datei realisieren.
Im Forum habe schon nach ähnlichen Themen gesucht, aber nichts gefunden.

Hat jemand vielleicht ein Idee, wie man ein Formular per Kommandozeilen-Kompiler in die Objektablage einfügt?
Zur Not würde es auch reichen, wenn ein in der Objektablage befindliches Formular per Batch-Datei aktualisiert wird.


Viele Grüße,
pszopp
www.pstipp.de | Tippseite zur Formel 1 und Fußball WM/EM - kostenlos und Just-For-Fun
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#2

Re: Form mit Kommandozeilenkompiler in Objektablage verschie

  Alt 13. Jun 2006, 17:40
Hallo,

bevor du mit Antworten aus dem D2006-Lager zugeschmissen wirst: in D7 findest du im Verzeichnis $(DELPHI)\Bin die Datei DELPHI32.DRO, eine leicht verständliche INI-Datei, in der jedes repository object aus dem Verzeichnis $(DELPHI)\ObjRepos als Abschnitt registriert ist und die Angaben aus den Dialogen "Der Objektablage hinzufügen" die Schlüssel/Werte-Paare bilden. Ich weiß nicht, ob sich da soviel geändert hat.

Grüße vom marabu
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#3

Re: Form mit Kommandozeilenkompiler in Objektablage verschie

  Alt 14. Jun 2006, 12:25
Zitat von marabu:
...bevor du mit Antworten aus dem D2006-Lager zugeschmissen wirst...Ich weiß nicht, ob sich da soviel geändert hat.
Mich wundert eher, daß überhaupt eine Antwort kommt. Geändert hat sich allerdings schon grundsätzliches. Statt INI-Dateien haben sie ab D2005 XML-Dateien verwendet. Nun ja, wird schon seinen Grund haben. Gut ist, daß es sich nach wie vor lediglich um Textdateien handelt.

Allerdings sehe ich keinen Grund für die Frage. Was hat das abspeichern von Dateien mit DCC32 zu tun ?
Gruß
Hansa
  Mit Zitat antworten Zitat
pszopp

Registriert seit: 7. Sep 2005
Ort: Alsdorf
95 Beiträge
 
Delphi 2010 Professional
 
#4

Re: Form mit Kommandozeilenkompiler in Objektablage verschie

  Alt 19. Jun 2006, 17:01
Danke für die schnellen Antworten.

@marabu:
Ich habe mir die Datei "Delphi32.dro" mal unter Delphi7 angeschaut und auch verstanden.
Unter D2006 habe ich diese Datei nicht mehr gefunden.
Auch unter den Xml-Dateien konnte ich nicht die passende finden.


@Hansa:
Ich will ein Formular-Template automatisiert aktualisieren.
Das muss nicht unbedigt mit DCC32 geschehen.


Viele Grüße,
pszopp
www.pstipp.de | Tippseite zur Formel 1 und Fußball WM/EM - kostenlos und Just-For-Fun
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#5

Re: Form mit Kommandozeilenkompiler in Objektablage verschie

  Alt 19. Jun 2006, 19:25
Zitat von pszopp:
...Ich will ein Formular-Template automatisiert aktualisieren...
das Problem sind hierbei hauptsächlich die DFM-Dateien. Folgende Möglichkeiten bestehen für OOP mit Delphi :

1. Klassen ableiten

So in etwa :

type TMyForm = class (TForm); Das wäre Dein Weg. Alles auf den Forms selber erzeugen, Koordinaten und den ganzen Krempel zur Laufzeit festlegen usw. Vorgehensweise ähnlich wie ab TP 5.5. Programm schreiben, welches die PAS und DFMs modifiziert usw.

2. Objektablage benutzen

Du erzeugst eine Form mit Button. Schiebst den an die richtige Stelle. Änderst noch die Farbe, Schriftgröße, Tastatur/Mausereignisse und blabla (TMyForm). Diese kommt ins Repository. Alles innerhalb der IDE ! Die nächste Form kommt jetzt von da (Vererbung). Und siehe an : Der Button ist schon da und der vorher definierte Kram auch ! Der Button ist allerdings an ungünstiger Stelle -> an gute Stelle ziehen und fertig.

Kommandozeile hebelt das ganze allerdings fast schon aus. Mehr schreiben nützt wohl nichts, weil sowieso keiner das so benutzt. Das mit den XML kam übrigens direkt von Borland. Wegen .NET und der geringen Anwendung solcher Techniken hatte ich die Befürchtung, daß das Konzept so nicht weitergemacht wird. 8)
Gruß
Hansa
  Mit Zitat antworten Zitat
pszopp

Registriert seit: 7. Sep 2005
Ort: Alsdorf
95 Beiträge
 
Delphi 2010 Professional
 
#6

Re: Form mit Kommandozeilenkompiler in Objektablage verschie

  Alt 20. Jun 2006, 10:11
OK,

wie ich ein Formular manuell (in der IDE) aktualisiere weiß ich.

Der Knackpunkt ist, dass ich das Formular-Template aus dem
Repository mit verschiedenen Versionen lade.
Bei einem Update aus dem Repository muss ich Delphi also beibringen,
dass sich das Formular geändert hat.


Viele Grüße,
pszopp
www.pstipp.de | Tippseite zur Formel 1 und Fußball WM/EM - kostenlos und Just-For-Fun
  Mit Zitat antworten Zitat
Hansa

Registriert seit: 9. Jun 2002
Ort: Saarland
7.554 Beiträge
 
Delphi 8 Professional
 
#7

Re: Form mit Kommandozeilenkompiler in Objektablage verschie

  Alt 20. Jun 2006, 11:44
Zitat von pszopp:
..Bei einem Update aus dem Repository muss ich Delphi also beibringen,
dass sich das Formular geändert hat.
Ich glaube das Thema hier gehört tatsächlich in eine meiner "Lieblingskategorien". 8) Denn : der Sinn des Vorhabens ist nicht zu erkennen. Der Weg zum Ziel ist schleierhaft. Die Werkzeuge, um das "Ziel" zu erreichen sind total verkehrt. So ist das. Also nochmals : die Objektablage dient dazu, sich selber Forms usw. anzulegen und grundlegende Eigenschaften dort zu definieren. Und wenn es nur ein caFree im OnClose ist, damit das nicht vergessen wird. Und dann nicht einfach nur neu -> Form, sondern neu -> weitere -> MyForm zu benutzen. Somit sind die Eigenschaften der Form vorhanden und die Quelltexte werden dann automatisch richtig angelegt. Bei Kommandozeile muß man eben bloß manuell sämtliche Dateien so ändern, wie es die Objektablage sowieso automatisch macht.
Gruß
Hansa
  Mit Zitat antworten Zitat
pszopp

Registriert seit: 7. Sep 2005
Ort: Alsdorf
95 Beiträge
 
Delphi 2010 Professional
 
#8

Re: Form mit Kommandozeilenkompiler in Objektablage verschie

  Alt 21. Jun 2006, 09:50
Dank marabu und ezekiel habe ich das Problem jetzt gelöst.
Bei Delphi 2006 befinden sich alle Formular-Templates in der Datei Objrepos\BorlandStudioRepository.xml.
Die Datei ist leicht verständlich und kann einfach editiert werden.

Viele Grüße,
pszopp
www.pstipp.de | Tippseite zur Formel 1 und Fußball WM/EM - kostenlos und Just-For-Fun
  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 07:59 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