Wie definieren Sie die version der Anwendung an einem Ort für mehrere Anwendungen?
Haben wir ein system, das aus zahlreichen Anwendungen. Alle Anwendungen haben Ihre version gleichzeitig geändert. Derzeit, wenn wir eine neue version freigeben, wir müssen Sie manuell öffnen Sie die Projekt-Optionen der einzelnen Anwendung, und ändern Sie die version eins nach dem anderen. Gibt es eine Möglichkeit, zu kompilieren, die alle Anwendungen auf die gleiche version, zum Beispiel, speichern Sie es in eine Globale Datei-und nach dem compilieren, diese Datei zu Lesen, und weisen Sie diese version für das Projekt? Ich versuche nur, zu beseitigen, zu viele Schritte, da wir planen, auf eine änderung der Versionsnummern häufiger. Ich möchte es ändern, nur an einem Ort. Kann das getan werden? und wie?
- Die Produkt-version?
- Ich benutze einen home grown-tool zu erstellen .der rc-Datei für die jeweilige app und dann kompilieren, um die Ressource als Teil meiner build-Skript. In anderen Worten: ich verlassen Sie sich nicht auf eine der eingebauten Einrichtungen.
- Sowohl die Produktversion und die Version der Datei.
- Wenn Sie eine app bauen wie FinalBuilder, können Sie automatisieren den Prozess ganz einfach. Ich benutze eine kommentierte name/Wert-paar an der Spitze jeder das Hauptformular der Anwendung, wie beispielsweise { buildversion=3.0.1 }, dann Finalbuilder liest die name-Wert-Schritten, und spart während der Erstellung meiner Bereitstellung bauen.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie erstellen eine
VERSIONINFO
Ressource, die in einem nur-text-Datei (eg.,Versioninfo.rc
)Hinweis: Die C-Stil-null-Abschlusszeichen (
\0
) benötigt werden, am Ende jedes Element, wie gezeigt, um für den Ressourcen-compiler, um richtig zu beenden, den strings. Andernfalls, wenn Sie mit dem Explorer zum anzeigen der Versionsinformationen für die ausführbare Datei, erhalten Sie möglicherweise verstümmelt oder teilweise verketteten Werte.Fügen Sie eine Zeile in Ihre Projektdatei Quelle:
Schlage ich vor, um die gemeinsamen version-info-Ressource in eine externe Referenz in Ihrem version control system, und dann können Sie einfach überprüfen Sie es heraus, in jedem Projekt-Ordner und aktualisieren Sie es leicht.
Projekt->Bauen, und Ihre version info ist eingebettet in die .exe. Sie können überprüfen Sie mithilfe von Windows Explorer und der Anzeige der Eigenschaften der app.
Gibt es ein paar Beiträge (eins von mir und eins in einer Antwort von Jim Fleming) in den Embarcadero Delphi-Foren an CodeNewsFast Archive. Mir ist [hier], wo beschreibe ich Schritt-für-Schritt, wie Sie eine pre-build-Ereignis in Ihrem Projekt zur Aktualisierung der Versionsnummer in der Ressource-script, das ich oben gepostet.
Jim posts ein paar Antworten, aber über ein Dutzend posts oder so da unten ist die Quelle für eine ausführbare Datei, die aufgerufen werden kann, die pre-build-Ereignis, das für ihn arbeitet. (Es gibt einige Dinge würde ich anders machen, wie lassen sich die IDE-übergeben Sie das Projekt Namen und Speicherort auf der Kommandozeile; wie dies beschrieben ist in der Schritt-für-Schritt-Artikel. Ich würde auch mit der version Parsen und Inkrementieren anders, aber die basic-app ist ein guter Ausgangspunkt.)
Embarcadero Gruppen sind derzeit down, aber ich war in der Lage, zum abrufen von Jim ' s code von CodeNewsFast als gut, und es reproduzieren können hier:
A) Erstellen Sie Ihre Version-Info-Ressource-Datei in Ihrem Projekt-Verzeichnis oder wo auch immer, mit den folgenden
Inhalt und Dateierweiterung .rc:
B) Erstellen Sie ein neues Projekt in einem Ordner, code-nur Modul sollte ähnlich sein:
C) In den Projekt-Optionen das Projekt, dessen build-Nummer erhöht werden:
Entfernen Sie das Häkchen "include version info".
Fügen Sie eine pre-build-Ereignis mit dem folgenden text, wie geschrieben, darunter die zwei Paare von doppelten Anführungszeichen, ersetzen Sie die Teile innerhalb von <, >:
"<vollständiger Dateiname und Pfad des auto-increment-Programm exe - >" "<vollständiger Dateiname und Pfad der .rc resource file - >"
D) Fügen Sie dem Projekt Hand, direkt unterhalb des "Programme" Stichwort:
werden das gleiche hier: wenn ich mich Recht erinnere, habe Fehler, wenn Sie anders waren.
E) Kompilieren Sie, führen Sie und genießen Sie die Rückkehr der Auto-Inkrement-build-Nummern, die trotz Embarcadero mit entfernt die Anlage.
Könnten Sie die pre-build-Ereignis auf, zum Beispiel, aktualisieren Sie die
ProductName
oderFileDescription
Werte, oder jegliche andere, anders zu sein von der Basis-Skript.1252 (multilingual).
verursachen .RC kann nicht kompiliert werden, können Sie (oder jeder andere) bestätigen?UPDATE: Es ist nicht Teil der RADStudio selbst, sondern kommt von Andreas Hausladen die DDevExtensions (was ich bin also verwendet zu haben...!).
Können Sie es tun in der IDE mit einer Projektgruppe vorausgesetzt, man installiert die ausgezeichnete DDevExtensions von Andreas Hausladen.
Options|Version Info page
.Project|Set Versioninfo...
zu öffnen Sie die Projekt Versioninfo-dialog (nur einmal, das aktuelle Projekt nicht in Frage).Beispielsweise sehen, wie ich die set-version, um beide Projekte auf einmal:
Dann ein
Build All
auf die Projektgruppe produziert sowohl EXE-Dateien mit der version im 1.1.1.9 und alle anderen details...Dies ist eines der Anwendungsfälle für die dzPrepBuild:
http://www.dummzeuch.de/delphi/dzprepbuild/englisch.html
(Hinweis: Das Projekt wurde auf sourceforge verlegt, weil berlios wurde, geschlossen werden, im letzten Jahr. http://sourceforge.net/projects/dzprepbuild/)